当前设置;
我有一个运行网站的专用服务器(这是一个灯组论坛)
- 操作系统:CentOS
- CPU :双 3.2Ghz 四核 Xeons
- 内存:40GB(10x4GB DIMM)
- 存储:带 2 个 7.2k SATAII 500GB HDD 的软件 RAID1
- 论坛MySQL DB大约10GBs
- Web 根大约 1.5GB(主要是用户上传的图片)
我想尽可能多地调整服务器以尽可能少地使用硬盘。我觉得他们是这里的致命弱点。没有资金可用于任何硬件更改,因此我一直在探索软件性能增强选项。
拟议的补充;
我已经阅读了一些有关Varnish和memcached的文章。PHP 论坛支持 memcached(供应商提供了在配置文件中启用它的说明)所以我应该能够安装和使用它。我想我可以将 Apache2 绑定到 loopback/127.0.0.1 接口而不是其面向公众的接口,并安装 varnish 将其绑定到面向公众的接口,将请求传递回 127.0.0.1 上的 Apache。
稍后我可能会针对 Varnish 和 memcached 的技术配置分别提出问题,目前我正在将其作为设计理念进行输入。这对我来说听起来像是合理的逻辑,但实际上这是一种疯狂的做法吗?许多人使用这两种缓存包都取得了巨大成功,在这种情况下他们是否可能会提高对硬盘的需求?如果没有,我还应该看什么?
这取决于您运行的网站类型以及您在此服务器上使用的软件类型。如果对静态内容的请求很多,那么 varnish/nginx 确实可以帮助减少系统资源(CPU/RAM)的使用。如果可以缓存数据库查询,那么 memcached 也可以提供帮助(假设您想自己编写一些代码)。您可能仍想查看新版本的 Apache (2.4),因为事件 MPM 现在使用与 nginx/varninsh 相同的技术来处理请求(虽然它仍然比 nginx/varnish 更慢并且使用更多资源,但它是对 apache 的巨大改进2.2).