And*_*ndy 2 php cache shared-hosting
我正在使用共享主机,但无法启用 APC。有一个关于该线程在这里,建议的唯一原因是为了安全(PHP,CGI VS mod_php的)。我询问了主机,他们说这是由于性能原因,特别是 I/O 会导致盒子关闭。我真的不明白 - 使用共享内存操作码缓存肯定会减少I/O?基本上,如果我正在建立一个共享托管公司(不是我可以!),我会认为使用缓存(如果安全性允许)来提高所有客户端的性能会很有意义。
任何人都可以为我解释一下吗?TIA
我会说共享主机计划上的 APC 通常不是一个好主意。
您托管的答案是正确的,但这不是唯一的原因。
当您获得共享主机时,您应该意识到您并不是唯一一个使用托管您的站点的服务器的人。根据托管公司的服务器,可能有 300 个(或更多)客户也在该机器上托管他们的站点。
通常这些站点有很多 php 文件。例如,一个joomla 1.6驱动的站点有 ~3000 个 php (~10mb) 文件(包括站点和管理面板)。想象一下,所有这 300 个客户都在使用 Joomla 平台,并且这些站点都在
这意味着所有这些客户端最终将有大约 900000 个文件要缓存 - 大约 3000mb RAM 将仅用于缓存 php 文件。如您所知,在 APC 中,您还可以存储“用户缓存条目”,您通常可以在其中存储设置或序列化对象。我不能说那里会有多少 RAM,因为这取决于您存储的内容,但让我们说另外 50-100mb。
现在我们使用了大约 3,1GB RAM。
现在添加一些运行基本服务所需的 RAM - Apache、FTP、PHP、MySQL、PostgreSQL、SendMail 和服务器备份工具。您可能最终会使用接近 5-6GB 的 RAM,几乎可以永久使用。
当您缓存时,APC 的其他问题就会出现 - 每个人都可以看到您缓存的内容(据我所知)。因此,您可能需要对存储的内容进行加密——这将需要更多的 CPU,因为您将一直在加密/解密。此外,如果有人不小心清除了所有缓存的文件/用户条目,服务器将疯狂地尝试重新缓存。
底线是没有系统管理员会经历*ss 中的所有痛苦来启用和支持APC。这对公司来说也不是什么好处。他们宁愿让 300 个以上的客户付钱给他们,也不愿与 APC 打交道并想知道他们的服务器是否不会停机或任何时候都不会出错。
更好的解决方案是,如果客户端获得(托管)专用服务器。这样,客户端将是唯一一个在该服务器上托管站点的人,他可以要求支持人员在服务器上安装您想要的任何内容。这会容易得多,并且可以避免客户、系统管理员和托管公司的白发增多:)
我希望这可以帮助您更好地理解为什么 APC 不包含在共享主机中。
| 归档时间: |
|
| 查看次数: |
4747 次 |
| 最近记录: |