`

构建高性能Web站点(笔记七)

阅读更多

第十章 分布式缓存


    基于动态内容的各种缓存,基本上都是基于页面缓存或局部动态内容的缓存。
    页面缓存只提高了读数据的速度,并没有提高写数据的速度。
    文件系统内核缓冲区成为页高速缓存,包括读缓存区写缓存区
    memcached: 
    memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。
    memcached使用物理内存作为缓存区,可独立运行在服务器上。
    memcached使用key-value的方式来存储数据,这是一种单索引的结构化数据组织形式,可使数据项查询时间复杂度为O(1)。
    缓存区空间有限时,memcached会使用LRU算法淘汰一些数据项。
    memcached使用libevent函数库实现网络并发模型(如epoll),所以它能支持较大并发用户数的访问。
    memcached可以缓存用户状态(序列化的对象)。
    memcached提供了一个协议,我们可以得到它的实时状态,从而对它进行监控。
    缓存扩展:
    站点足够大时,需要扩展memcached的规模,包括并发处理能力和缓存空间容量等。
    memcached在并发处理能力上很得心应手,这就需要增加新的缓存服务器进行扩展。当存在多台缓存服务器后,就需要解决如何将缓存数据均衡地分布在多台缓存服务器上。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics