【发布时间】:2011-08-03 10:51:32
【问题描述】:
鉴于以下情况,请建议我一种在我的应用程序中实现 memcache 的方法。
目前,我有 10 个 Web 服务器,其中正在运行相同的应用程序,并且有一个负载平衡器来决定将请求发送到哪个 Web 服务器。 在每个网络服务器上,我都在维护一个本地缓存,即有一些类 XYZ 控制 MySQL 表 xyz 并且这个类有初始化方法 这将预热本地缓存。
现在,假设网络服务器是 X、Y、Z。负载均衡器向 X 发送一个请求,该请求将一些值添加到 db 并更新缓存。负载均衡器再次向 Y 发送了相同的请求。但是由于服务器 Y 没有缓存中的值,它会命中数据库。
因此,在这种情况下,我应该如何在我的应用程序中实现 memcache,以便最大限度地减少数据库命中。 我是否应该有一个单独的 memcache 服务器,而所有其他 10 个网络服务器都将从这个 memcacher 服务器获取缓存数据?
【问题讨论】: