我的设置:
- 4 个网络服务器
- 静态内容服务器(NFS 挂载)
- 2个数据库服务器
- 2台“做魔术”服务器
- 另有 8 台机器指定多用途。
我正在为三种缓存机制编写一个包装器,以便它们可以以某种标准化的方式使用:文件系统、Memcached 和 APC。我正在尝试提出使用示例(以及实际放入每个缓存的内容)。
文件系统
处理我们生成然后静态服务的内容。RSS 提要、旧报告数据、用户特定页面等...这些都缓存到静态服务器。
内存缓存
PHP 会话数据、MySQL 查询结果,通常是我们系统中需要可用的东西。我们有 8 台机器可以包含在服务器池中。
装甲运兵车
我不知道。这两个“做魔术”服务器不是任何分布式系统的一部分,因此它们似乎可以在 APC 中缓存查询结果并从那里工作。过去,我什么都想不起来。
查询缓存
鉴于我们使用 SQL 的性质,查询缓存会降低性能。我已经禁用了这个。
一般来说,什么类型的数据应该存储在哪里?这种设置是否有意义?
分布式系统中的 APC 数据缓存有什么用(我想不出一个)?
有什么我遗漏的东西可以让事情变得更容易或更高效吗?
编辑:我终于明白了帕斯卡在说什么。我一直在想,我只会将我的一部分配置/任何东西移动到 APC,并且仍然从磁盘加载文件的其余部分。还有其他建议吗?