我的设置:
- 4个web服务器
- 静态内容服务器(NFS挂载)
- 2个数据库服务器
- 2个“执行魔法”的服务器
- 另外8台机器被指定为多用途。
我正在编写一个包装器,使三种缓存机制可以以某种规范化的方式使用:文件系统、Memcached和APC。我正在尝试提供使用示例(以及每个缓存中实际放置什么内容)。
文件系统
处理我们生成并静态服务的内容。RSS订阅源、旧报告数据、用户特定页面等...这些都被缓存在静态服务器上。
Memcached
PHP会话数据、MySQL查询结果,通常是需要在我们的系统中可用的东西。我们有8台机器可以包含在服务器池中。
APC
我不知道。两个“执行魔法”的服务器不属于任何分布式系统,所以它们可以在APC中缓存查询结果,并从那里工作。除此之外,我想不到其他任何东西。
查询缓存
考虑到我们使用SQL的性质,查询缓存会降低性能。我已经禁用了它。
一般来说,应该在哪里存储什么类型的数据?这个设置有意义吗?
在分布式系统中是否有APC数据缓存的任何用途(我想不到)?
是否有其他遗漏的东西可以使事情更加容易或更有效率?
编辑:最后我明白了Pascal在说什么。我一直认为只会将我的配置/其他内容的一部分移动到APC中,并且仍然从磁盘加载其余部分。还有其他建议吗?