周梦康 发表于 2015-06-14 8818 次浏览 标签 : 计算机基础
下面两个场景都使用了下面两台服务器:
    A 服务器是负载均衡中的一台机器.
    B 服务器是数据存储的机器.
1.基于用户的会话保持
如下场景:
    a 用户在某一段时间内都是访问的 A 服务器,而不会被分发的负载后端的其他机器(也就是会话保持).
    如果这个产品是 sns, a 用户经常去取用户的好友关系,那么就可以使用本地缓存.
    把从 B 服务器上取到的数据缓存在 A 服务器上,即使 B 服务器上的数据本身就是 redis 或者 memcache 但是从 A 服务器上去连 B 服务器要建立网络连接,不如本机自身内存读取速度快.这样做同时也减少了后端服务器 B 的压力.
2.基于不同用户大量地读取同样的内容.
    如下场景:
    当 a,b,c,d 四个用户都要访问某一个活动页面,而他们都正好都被分在 A 服务器上,这样,当 a 访问了活动页面的时候,从 B 服务器上获取数据,存入了 A 服务器的本地缓存,那么b,c,d 三个用户访问的时候就不需要去访问 B 服务器了.
    PHP 使用本地缓存,可以使用 opcode 缓存扩展 比如 apc.鸟哥专门写了一个扩展 yac 专门用来做本地缓存.

评论列表