我已决定扩展服务并使用 NGINX 上游添加负载平衡。
我的设置
upstream main {
server example1.com:8909 weight=1;
server example2.com:8909 weight=1;
...
}
server {
listen 80;
server_name example.com;
location / {
proxy_set_header Host $host;
proxy_pass http://main;
}
}
Apache2 处理每台服务器上的请求。负载平衡服务器还包含一个 Apache 实例、代码和主数据库(它们最终会移动)。
代码文件夹(/var/www/
)在网络上作为 nfs 共享。其他服务器也可以远程访问数据库。
当我访问时,只有当我访问装有负载均衡器和数据库的服务器时,它才会立即加载。当我访问任何其他服务器时,加载时间大约需要 5-8 秒。
注意:托管服务不支持私有IP,因此它们目前都在公共IP上
答案1
我正在考虑删除这个问题,但希望它能帮助到有同样问题的人。
我在 digitalocean.com 上托管我的网站,但结果发现他们还不支持私有 IP。因此,在创建新的服务器集群时,我错误地将其添加到了另一个数据中心。(ping 返回的响应时间为 75 毫秒,而他们承诺的响应时间不到 1 毫秒)。当我意识到这一点并将我的应用程序移至同一数据中心后,网站速度就恢复正常了。