在php网站上缓存大量页面

bra*_*dym 5 php mysql caching codeigniter

我参与了一个项目,最终将在现有网站上创建大约1000万个新页面.该站点和新项目使用CodeIgniter构建并连接到MySQL.

我以前从未处理过这种规模的网站,我担心如何处理缓存.有没有人在这个大小的PHP网站上处理缓存可以给我一些指示?我已经习惯了CodeIgniter缓存系统和类似的东西,但是会产生的缓存文件数量令我担心.

任何建议,将不胜感激.

Bru*_*son 1

PHP 和 CodeIgniter 可以使用多层缓存,但您不必担心标准 Linux 服务器上缓存文件的数量(各种文件系统每个挂载点可以处理数亿个文件)。但要选择缓存方法,您需要仔细衡量。

选项:

  • 操作码缓存(Zend、eAccelerator等)
  • CodeIgniter 视图缓存(按视图配置)
  • CodeIgniter读取查询缓存
  • 一般网络缓存(更多信息)
  • 优化您的数据库(更多信息)

(等等)

此外,您可以通过使用内存文件系统和内存表来改进文件缓存。

真正的问题是,如何选择缓存策略?容量规划。您可以根据最佳理论对系统(用户、帐户、页面、文件)进行建模、模拟、测量和添加缓存。再次测量。产生新的理论和测量,直到找到适合您所需规模的方法。

根据我的经验,视图缓存和 Web 缓存对于广泛阅读的网站(例如 WPSuperCache)来说是一个巨大的收获。操作码缓存(以及其他形式的最小化)对于高度动态的站点非常有用,数据库性能调整也是如此。