• 我想说:mysql 的 join 真的很弱
    可以把mysql当一个黑盒,使用角度来验证这个结论) 验证结论的时候,会有很多发现,各位往后看。mysql配置为2G,特别说明硬盘是SSD。此时说明mysql查询有些吃力了,但是仍然嫩查询出来。步骤5.1,mysql查询不出来,4表连接,对我本机mysql来说,1.5亿数据超过极限了(我调优过这个SQL,执行计划和索引都走了,没有问题,show profile显示在sending data.这个问题另外文章详谈。超过三张表禁止join,这个规则是针对mysql来说的。所以我会说mysql的join很弱。
  • 再有人问你 Java 内存模型是什么,就把这篇文章发给他。
    Java内存模型,是这三个知识点当中最晦涩难懂的一个,而且涉及到很多背景知识和相关知识。网上有很多关于Java内存模型的文章,在《深入理解Java虚拟机》和《Java并发编程的艺术》等书中也都有关于这个知识点的介绍。本文,就来整体的介绍一下Java内存模型,目的很简单,让你读完本文以后,就知道到底Java内存模型是什么,为什么要有Java内存模型,Java内存模型解决了什么问题等。希望能够让读者可以对Java内存模型有更加清晰的认识。
  • IntelliJ IDEA 详细图解最常用的配置 ,适合刚刚用的新人。
    注释一行,Ctrl + / 这都是我们常用的。也是我们习惯的,这个也是极好的设置啊。我图上就是把eclipse的键盘映射复制一下,然后重命名一下,因为还是有些快捷键修改下,用着比较好。快速找到最近使用的文件的设置Java代码左面 的边边栏的神奇地方使用下面2张图,算是这个编辑器比较牛逼的地方,简单展现吧。上面这个图呢,在svn一文中详细解释了,可以参观一下。推荐阅读在 IntelliJ IDEA 中使用 VIM12 个酷炫的 IntelliJ IDEA 插件IntelliJ IDEA 最常用配置详细图解看完本文有收获?请转发分享给更多人关注「ImportNew」,提升Java技能好文章,我在看
  • 一文搞懂蓝绿发布、灰度发布和滚动发布
    长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。蓝绿发布在早期物理服务器时代,还是比较昂贵的,由于云计算普及,成本也大大降低。如果你们运维自动化能力储备不够,肯定是越简单越好,建议蓝绿发布,如果业务对用户依赖很强,建议灰度发布。
  • 看了几百个小时资料,为什么你只能是“伪架构师”?| 聊聊这件事
    在如今的互联网行业内,title混乱,80%以上拿着高薪挂着架构师头衔的老码农,实则都是“伪架构师”。我不否认他在理论层面所能了解的技术宽度,但他绝对算不上是“架构师”。当由高并发引发相应时间过长或无响应等问题时,如何阅读源码、问题排查、问题剖析、组件改造甚至技术栈分析,都使得“伪架构师”束手无策。后厂理工学院院长张高博士、阿里云智能战略与合作部总监孟晋宇此次阿里云与后厂理工学院针对架构师行业设计实战导向的资深课程,旨在解决一线大厂对具备实战能力的架构师岗位空缺的难题。
  • 12306 抢票,极限并发带来的思考?
    尤其是春节期间,大家不仅使用12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306服务”承受着这个世界上任何秒杀系统都无法超越的QPS,上百万的并发再正常不过了!笔者专门研究了一下“12306”的服务端架构,学习到了其系统设计上很多亮点,在这里和大家分享一下并模拟一个例子:如何在100万人同时抢1万张火车票时,系统提供正常、稳定的服务。到达目标相同Cost值的路径,可以执行负载均衡,最多6条链路同时执行负载均衡。但是这是并发架构的大忌,因为在极限并发情况下,用户可能会创建很多订单,当库存减
  • 微软宣布加入 OpenJDK 项目
    我代表微软 Java 工程团队,很高兴正式加入 OpenJDK 项目,并期待与你们的合作。微软已经认识到在甲骨文成功有效管理下的 OpenJDK 项目所获得的巨大价值,它收购了 Java,得到了更广泛的软件生态系统,我们也期待做出自己的一份贡献。我们团队在初期将致力于一些小的 bug 修复和反向移植,这有助于我们更好地成为 OpenJDK 的一员。整个团队将加入一些 OpenJDK 邮件列表并参与会话。...2019 年 10 月,微软宣布加入 OpenJDK 参与开发。
  • 服务刚启动就 Old GC,要闹哪样?
    转自:涤生的博客,作者:涤生YQ1.背景最近有个同学说他的服务刚启动就收到两次 Full GC 告警, 按道理来说刚启动,对象应该不会太多,为啥会触发 Full GC 呢?带着疑问,我们还是先看看日志吧,毕竟日志的信息更多。但是你会发现一个奇怪的现象,咦,"CMS-initial-mark: 0K" 怎么 Old Gen 对象使用空间大小为 0,细想服务刚启动,Old Gen 为 0 也算正常,但是为什么会触发CMS GC 呢?
  • 如何找到真正的 public 方法
    然而,这些方法并不一定能被调用,比如在 private inner class 或 lambda 表达式中声明的方法。这篇文章会介绍如何找到所有真正的 public 方法。昨天,我试图找出某个未知对象的所有 public 方法。第一个测试对象为 java.util.ArrayList,运行结果一切正常。虽然 Size() 是定义在 java.util.Collection 中的 public 方法,但是定义的 class 也必须为 public。Java 没有“private” class 或类似的东西,class 只有 public 或 package 访问权限。之前的版本中,所有访问都是通过 synthetic method 完成,Java 12 对此进行了改变。package problem;public interface A { CharSequence foo();} package problem;public interface B { java.io.Serializable foo();}接下来,我们在另一个 package problem.inner 中定义 class “Hidden”,包含两个工厂方法。还有另外一个 public 方法 bar(),虽然为 public,但因为内部类为 private,同样也无法访问。
个人资料

伯乐在线旗下账号,专注Java技术分享,包括Java基础技术、进阶技能、架构设计和Java技术领域动态等。