对于静态网站,我使用 HAProxy(一个主服务器,多个节点,上面有静态 HTML 文件)。此外,您还推荐哪些服务,以便让 WordPress 网站以相同的方式托管,让 MySQL 和文件在节点间发生变化。
谢谢您的任何建议/指点。
编辑:我目前正在使用带有标准 LAMP 堆栈的 Ubuntu,我之所以需要这个是因为一旦我的一个客户站点因受到 1000 次点击而瘫痪,他们就会打电话给我,然后我就会被大声呵斥。
@polynomial 数据一直在变化(主要问题)从属服务器需要真正访问负载最小的服务器。MySQL 目前只是一个服务器,为 WP 提供数据。我们确实知道网站何时会增加负载,但除了增加更多内存和带宽外,我们无能为力。
答案1
具有适当缓存的 WordPress 实例(Wordpress 超级缓存我想到)应该可以帮助很多在为非常繁重的 WordPress 网站提供服务。
但您需要做的第一件事是确定瓶颈在哪里。如果您的数据库引擎相当轻量,但有大量的服务器端数据后处理,那么简单地扩展您的 Web 服务器可能会有所帮助,并让它们全部连接到同一个后端数据库。
在这种情况下,您需要做的就是rsync
每隔几分钟将文件发送到对方/从对方发送,或者如果这还不够,那么使用某种分布式文件系统(我只知道 Windows 中的 DFS,我不太了解 *nix)。
这就是 Stack Overflow 和 Stack Exchange 网站的工作方式。根据他们的最新博客文章在过去的两年里,他们的基础设施没有发生太大的变化。Stack Overflow 1只有一个大型数据库服务器,总共为六Stack Overflow 网络服务器(其中 3 个专用于 SO)。
因此,如果像 Stack Overflow 这样非常复杂的网站需要处理大约一百个请求每秒每天 24 小时,只需一台数据库服务器,我建议使用 Wordpress使用好的缓存插件除了使用单个数据库服务器的最疯狂的工作负载之外,其他所有工作负载都应该没问题,这使得扩展变得更加简单(一旦您的基础设施设置正确,只需在其上放置更多的前端 Web 服务器即可)。
1好的,所以有两个数据库服务器,但 MSSQL 集群的工作方式是,在一个时间点只有一个数据库服务器处于活动状态。因此,集群仅提供高可用性,而不是扩展性能。