<<大型分布式网站架构设计与实践>>试读

       看到这本书后有一种想一口气读完的冲动,感觉是一本系统性总结的书,让自己的知识点连贯起来,每当看到一小节时总会勾起自己以前的开发经历。

 

     整体看了下书的简介和目录,讲到了网站如何做到分布式,以及需要那些基础的服务系统,又着重简介了往往容易忽略的系统安全,怎样提高系统的稳定性、性能,最后又讲了日志分析和大数据处理。总体看设计的面非常多,可以当成一本扩展自己知识面的一本好书。
      第一章上来就是rpc和负载均衡,看到了zookeeper又眼前一亮,如果在添加上nginx转发等知识那就全了。
     2.1主要讲解了分布式缓存memcache的使用及分布式策略,包括Hash算法的选择
            说句实话memcache我没有用过,一直用redis,没想到仅仅一个小节就能让你memcache快速入手,可以了解到什么是一致性hash算法,2.1.3讲到了分布式session,主要是基于memcache的session管理memcached-session-manager
      2.2持久化技术
             先讲解了mysql扩展:分库、分表、主从复制,随着系统的扩展,一个库是没办法负载的,我们一般按照业务逻辑划分模块,每个模块在一张表,然而逻辑不能再划分,单表数据非常多的时候就需要考虑分表,分表主要在分表因子,有的按用户id,有的按照时间等等,有时候我们为了考虑多个维度可能还需要数据的赘余,例如当时我们做的一个关系库,从人的维度是按照用户id分表,从资源的维度就要按照资源id分表,最后到关系库实际原来的一条,如果分表就需要存两条;
             接着讲解了hbase,最近大数据越来越流行,可惜自己的业务逻辑在关系库上加上缓存就能满足,一直没接触到这块,的确hbase为大数据提供了现成的解决方案
            最后讲解的是我的最爱:redis,  Redis是一个高性能的key-value数据库,支持strings, hashs、lists、sets、sorted sets,最重要的是他提供了一个可以设置过期时间,另外宕机后数据不会丢失,所以很多以前mecache的缓存系统转到了redis上了,尤其新浪微博对redis的使用,让我们更加青睐,也可以做排名,具有现成的中从备份,spring也为他封装了一个客户端连接,最近又出了一个客户端可以再window上像连接mysql那样图形管理
      
        2.3消息系统
             消息系统开源项目要首说ActiveMQ了,他是完全采用Java实现的,完全支持j2ee提出的jms规范。提供消息创建、发送、接收、读取等服务;
             消息系统可谓各个系统间通信的一个桥梁,有可能你会用httpclient、rmi等调用接口,但他们是必须调用完后才能执行下面的,ActiveMQ就不一样了,消息发送者不需要同步等待消息接收者的响应,消息的异步接收降低了系统集成的耦合度,提升了分布式系统协作的效率,使得系统能够更快地响应用户,提供更高的吞吐。
              作者讲解了ActiveMQ的安装和调用,最后还讲解了如果用ActiveMQ做集群。
      2.4lucene搜索系统
              说句实话如果我不会lucene的话,看完这也很快能入门,讲的很到位,简单说了lucene如何建索引,如何搜索,几个专业词,以及lucene的原理。
             最后又讲解了solr,的确很多公司在solr,不过我个人比较倾向于elasticsearch
      

 

你可能感兴趣的:(试读)