我有一个虚拟服务器托管在我的本地提供商(塞尔维亚),我想将其移动到另一个提供商(德国)的专用服务器,所以我租用了专用服务器一个月来试用它。 经过两周的测试,我遇到了一堵砖墙,因为我找不到为什么德国服务器的网络响应比塞尔维亚服务器慢。事实是我正在塞尔维亚进行测试,但物理距离不应该是一个因素(或者它?
我注意到德语服务器很慢,因为我使用 PHP 页面在第三台机器上显示来自链接的 MSSQL 服务器(2012 Express)的数据,并且数据拉取非常慢。
在尝试优化PHP,查询并尝试不同的连接类型后,我尝试查看Web服务器是否相同,还是网络传输问题,因此我做了一个空白的HTML页面,只打印出一个单词,并将页面"index.html"复制到两个服务器的Web根目录,我从两个服务器得到不同的响应时间: 塞尔维亚语~40毫秒,德语~100毫秒。
以下是 Chrome 加载页面的服务器规格和屏幕:
塞尔维亚 塞尔维亚服务器浏览器
- 操作系统 – Win服务器2012标准64位
- 内存 – 4GB
- 处理器 – 英特尔至强 E5620 2.4GHz
- 硬盘 – 40GB(不知道类型)
- 万普 – v2.2
- 阿帕奇 – 2.2.21
- 菲律宾比索 – 5.3.10
德国 德国服务器铬
- 操作系统 – 赢服务器 2012 R2 标准 64 位
- 内存 – 64GB CPU – 英特尔酷睿 i7-6700 3.4GHz
- 硬盘 – 250GB (固态硬盘)
- 万普 – v2.2
- 阿帕奇 – 2.2.22
- 菲律宾比索 – 5.3.13
两个 Apache 都有模块"放气"和"过滤",并且在两个服务器上都有相同的 .htaccess 文件。
最后,我的问题是:有没有人知道去哪里看或尝试什么。
要找出哪一个(服务器或距离)是问题所在,您可以对脚本进行基准测试:
<?php
$start = microtime(true);
// your code
$duration = microtime(true) - $start;
?>
如果你得到类似的时间,问题出在网络上。