我在中国有一个使用亚马逊 AWS 中国版的 EC2 服务器。
它是一个具有以下配置的服务器:Apache 2 和 PHP 数据库是一个运行 MySQL 的 RDS 实例(也在中国)
问题:从中国境外访问速度非常慢。(在澳大利亚、法国和加拿大进行了测试)。是的,服务器必须留在中国 :)
从中国内部来看,访问时间是完美的。
我还必须进一步完善这个问题:什么是慢?AWS 宣传的带宽是中国 <> 中国的带宽。中国以外 <> 中国的带宽非常非常差。最低可以低至 2ko/sc。它也可以正常工作……它非常随机。
只是为了清楚起见,我甚至尝试了一个非常大的服务器,以防它对网络产生影响......但无济于事。
连接到中国的延迟(让我们 ping 一下)也非常慢。
因此,我尝试的第一个解决方案是在香港服务器上设置反向代理 (Varnish),并在前端使用 nginx(用于管理 SSL)。我尝试这样做是因为我可以从中国和世界其他地区获得到香港的良好访问时间。
现在,托管在中国 EC2 服务器上的应用程序是内联网。因此很难缓存除 JS、CSS 和图片之外的任何其他内容。(这些也是用 varnish 完成的,效果很好)
我确实认为反向代理可能会比直接访问更快,但目前还不是很成功。
我有什么解决方案?我需要让这个网站/内联网在世界任何地方都更快,而服务器必须留在中国。
我愿意听取任何想法,例如:Squid 是否更适合这个?vpn 服务器?
注意:这不是内网软件的问题。即使只有 1 个人,速度也很慢,并且同时在线人数不会超过 20 人。
非常感谢您的任何建议和忠告。
答案1
“防火墙”过滤了所有进出中国的连接。一般来说,所有连接都会受到影响,数据包也会大量丢失。
只要中国不改变这一点(可能性极小),您几乎无能为力。您可以通过内容缓存(例如缓存代理)加快内容交付速度,但无法加快功能速度。在中国境外设置服务器。