Recent Posts

架构服务化的一点思考

本文有 5256 字,大约需要 13 分钟可以读完, 创建于 2017-08-29

微服务是个非常热门的话题,最近几年随着互联网的深入演进和云计算的逐渐普及,几乎所有的公司、技术社区、组织都是言必谈微服务; 似乎没有微服务都不好意思说自己能保持技术能力的与时俱进了。这厢微服务还没有完全在实践中铺开,那边潮头Amazon又挑起了无服务器架构的大旗,引来无数人的关注。 本文试图对这些概念和架构思想做...

用Java Flight Recorder来调优JVM性能

本文有 6486 字,大约需要 16 分钟可以读完, 创建于 2017-08-22

随着Java程序在后端压倒性的普及,其性能本身早已经无人质疑;然而一个经常不为人道的事实是,Java平台上的程序不是天然就具有很高的性能; 因为Java语言显著降低了程序员的准入门槛,真正到系统性能这一块,仍然需要大量的调试和优化,即所谓的JVM性能调优。

TCP服务端socket会丢连接的诡异问题及思考

本文有 4564 字,大约需要 11 分钟可以读完, 创建于 2017-07-14

最近在跟踪项目的性能测试的过程中,发现了一个奇怪的问题:Netty服务器端新建的Channel的数目比Tcpdump抓包得到的经历过三次握手成功的连接数要少: 总有几个连接从抓包来看成功,然后Netty并没有为其分配Channel。直观上来看,似乎是Netty的处理问题值得怀疑,似乎是用于接受新连接的线程池堵塞了。

Excessive null checks in Java Defensive Programming?

本文有 7218 字,大约需要 18 分钟可以读完, 创建于 2017-06-27

最近在参与某开发小组的团体代码审查会的时候,发现组内的一线开发工程师对于何时应该做空指针检查并没有很清晰的认识;然而这在Java社区里早已经是个老生常谈的争论 。

Migrate blog to Jekyll

本文有 3970 字,大约需要 9 分钟可以读完, 创建于 2017-06-24

之前本blog的内容是基于强大的octopress生成为静态站点,然后将生成的内容静态拷贝到 github-pages 上去的。当octopress的作者宣布重构后的新版本预告后便急冲冲上去升级了本站内容,可惜很多插件都不工作了。眼见2年多过去了,貌似正式的3.0版本还没有被宣布,官方页面的帮助依然停留在2.0版...