缓存大小的容量规划

bas*_*sav 17 caching

如何进行缓存的容量规划 - 例如为ehCache,memcache或dynacache分配多少RAM? 有没有行业标准配方?

例如,我在数据库中有大约60,000条记录.这是公司数据 - 包含公司名称,描述和公司代码.我想使用jQuery实现一个类型化的功能,并希望将此公司名称详细信息存储在缓存中.

什么是理想的缓存大小?我知道缓存大小仅限于可用的可用内存量,但有兴趣了解具体方法吗?或者是试验和错误,你从一些尺寸和测试开始,绘制图形并继续调整缓存大小.

更新

公司ID - CHAR(9)

公司名称 - VARCHAR2(250 CHAR)

公司描述 - NVARCHAR2(1000 CHAR)

Boo*_*eus 39

1)如果您有专用的缓存服务器,那么您不必担心必须使用多少内存空间.您可以使用可用的最大可用内存量(或接近)并让它发挥其魔力.

2)如果缓存服务器与您的Web服务器相同,则您必须指定允许使用memcached(dynacache或其他)的程度.对于我的观点,实际上没有理想的缓存大小.这一切都取决于你的服务器有多少内存,你需要多少数据放入缓存等等.只要你的内存在缓存和Web服务器之间正确平衡,你就会很好.

在这种情况下,您需要在缓存中存储少于100 MB的数据.根据您的服务器的数量,它非常小,但您总是需要考虑数据增长的程度,还需要添加其他数据(如客户端,产品等......).因此,如果您放置的不足,则必须停止服务,增加允许的内存值,启动服务.

如果您的服务器处理大量需要大量内存的信息,那么您将不得不计算这些进程需要多少内存和资源.

快速举例:

  • 1个服务器(缓存和Web服务器),总内存为4G.
  • 系统和流程资源包括cronjob,数据库等:3G
  • 60,000个客户,总计100Mb(总是使用超过实际大小以防万一)

在此示例中,剩余1G内存(大约).由于您的系统足够,因此不建议剩余总金额.我会说使用384Mb或更少的缓存将是一个良好的开端.您允许缓存增长,并且不会影响系统内存.

我建议您监控服务器,以确保系统的内存分配和缓存平衡完美.

这是一篇很好的文章:http://techgurulive.com/2009/07/22/how-to-allocate-memory-within-memcached/