用技术创造价值,用艺术塑造自我!
Posts tagged memcached
书评《分布式Java应用基础与实践》
Jul 10th
在豆瓣上看这本书的提纲时,觉得非常的诧异:因为每章的标题都能够写一本很厚的书。再向上看看书的页数,我感觉这本书多半是个人经验的分享,经验之外的就是做简单的介绍而已。其实一谈到分布式,很多码农就开始膜拜了,作为码农的一份子,也就买书学习先了。
读完这本书,合上书回忆了大概的内容,印象最为深刻的还是 深入理解JVM 这一章,因为里面很多知识我都不了解,我对JVM的调优还停留在小儿科的阶段,对gc的算法和hotspot几乎一无所知,所以,有收获,有印象。也尝试自己在设定eden space的情况下,实现5次monitor gc 和一次 full gc,其实这是个好玩的题目,由于面试过的人无一人说精通gc,所以也没有用上。JVM调优在小型系统中关注的并不是很多,还是因为用户少的时候,很多问题无法暴露出来,但是如果不在初见端倪的时候就及时调整,问题很快就变成了灾难。
还有就是性能调优这章算是在读的过程中操作比较多的,通过动手能够理解后面自己碰到问题应该怎么做。记得自己写过一段很弱智的代码导致系统的cpu使用率过高,但是查找问题却用了很长时间,最后还是借助了jprofile来搞定。如果是能够用jdk和系统自带的工具就搞定的话,我也没有必要搞个D版的jprofile来玩自己。这本书上讲到的一些经验还是很有价值的。
由于对集合包和并发包相对较熟悉,所以这块简单的带过了。其实我觉得SOA这个概念中,我不喜欢SCA这种玩法,倒是对ESB比较感兴趣,这部分内容讲的比较少,较为遗憾,看来想好好的玩玩ESB,还是需要找找支付宝的那帮技术大佬们。
分布式系统中,读多于写的问题基本解决了,在大型应用中,httpserver前面搞个memcached集群,后端mysql用master-slaver的方式,slaver负责读,master负责写基本可以解决问题。但是自动twitter和webgame的出现,让写和读几乎一样的多了,这样问题就接踵而至。前面谈到的架构显然不能解决问题,怎样解决这样的问题,国内估计只有tencent这样的公司能够立刻说搞定,如果能够在书中抛出这样的问题,谈到一些解决方案,或许能够锦上添花了。
对做过较长时间javaer,如果读过《SOA in Practice》《java并发编程实践》《Java NIO》《构建可拓展的web站点》《深入Java虚拟机》等书,同时对书上的内容有过实践,我觉得读这本书就没有必要了!普通的码农还是读读提高自己(例如我)。
