摘要:原文:http://www.cnblogs.com/ccdev/archive/2012/12/29/2837754.html在上篇里,我们主要讨论了,这个系统怎样处理大数据的“读”操作,当然还有一些细节没有讲述。下篇,我们将主要讲述,“写”操作是如何被处理的。我们都知道,如果只有“读”,那几乎是不用做任何数据同步的,也不会有并发安全问题,之所以,会产生这样那样的问题,会导致缓存和数据库的数据不一致,其实根源就在于“写”操作的存在。下面,让我们看一看,当系统需要写一条数据的时候,又会发生怎样的事情? 同样,我们还是以friend list为例。现在,我登陆了这个网站,获取了friend l..
阅读全文
摘要:原文:http://www.cnblogs.com/ccdev/archive/2012/12/28/2836599.html2012年底,末日之后,看到大家都在写年末总结,我也忍不住想一试。工作已经3年半了,头一次写总结。虽然到现在仍是无名小码农一名,但工作这些年,技术着实有不少积累。成长最大的,当然就是这篇文章标题提到的——高性能分布式计算与存储系统的设计和研发过程,这也是我自2010年供职于国内最大的某著名网站之后,和这个系统一起成长,亲眼见证和伴随着它的发展,从一个婴儿一样的"Demo"程序,成长为现在可以处理千万级日PV的强大系统,直到2012年我离开。我也顺势积
阅读全文
摘要:原文:http://blog.sina.com.cn/s/blog_48d4cf2d0100nve9.html一直听说每连接开线程的服务器当连接多了以后,由于线程切换和线程竞争导致的开销将会导致每秒处理请求数快速下降。最近写了个每连接开线程的回显服务器想要验证一下这种说法。一开始以为会画出一张漂亮的图(像java nio vs tomcat那张图一样的)。结果却让我吃了一惊:连接数增加到了15000,服务器威猛依然,每秒处理请求数相比连接不多时没有明显下降( < 2%)。再次深感高性能这块不能拍脑袋想当然。之所以出现这样的结果。与测试程序很有关系。由于回显服务器线程间不需要访问共同的数据
阅读全文