在土耳其托管服务器能降低延迟吗?
服务器离访问者越近,延迟(ping)往往越低。原因是光在光纤中的速度设定了下限:大约每 1,000 公里单程 5 毫秒,往返 10 毫秒。如果您的访问者在土耳其,伊斯坦布尔的服务器可以把距离带来的影响降到很小。如果他们在国外,延迟就会更高。
本文中的数字是由物理定律得出的理论最小值,不是实测值。您可以用下面的命令,在自己的网络上测量真实的数值。
什么是延迟,它与带宽有什么不同?
延迟是数据包到达服务器再返回所需的时间,以往返时间(RTT)来衡量。带宽是每秒流过的数据量。可以把它想象成一根管道:延迟是它的长度,带宽是它的粗细。下载大文件时,粗细最重要。发送大量小请求时,长度最重要。
距离会增加多少延迟?
光在光纤中的速度约为每秒 200,000 公里,也就是大约每毫秒 200 公里。实际的线缆路线比直线更长,每台路由器还会增加一点时间。所以真实数值会高于下表。
| 从伊斯坦布尔到 | 大致距离 | 理论最小值(往返) |
|---|---|---|
| 安卡拉、伊兹密尔 | 350 公里 | 3.5 毫秒 |
| 中欧 | 1,000-2,000 公里 | 10-20 毫秒 |
| 西欧 | 2,000-3,000 公里 | 20-30 毫秒 |
| 北美东海岸 | 7,500-9,000 公里 | 75-90 毫秒 |
延迟会影响什么?
- 网页。在新建的 HTTPS 连接上,第一个字节大约在 3 个往返之后到达:TCP 1 个,TLS 1.3 1 个,请求和响应 1 个。使用 TLS 1.2 则是 4 个。服务器的处理时间还要另外加上。如果连接被复用,只剩 1 个往返。当一个页面发出几十个请求时,延迟会累加起来。
- 游戏。Ping 是每个操作到达服务器再返回所需的时间。玩家离服务器越近,体验越流畅。
- SSH。您输入的每个字符都要传到服务器,再回到您的屏幕。延迟高时,打字时会感到轻微的滞后。
- 下载和上传。这里由带宽决定,延迟其次。
谁能从土耳其的服务器中受益?
如果您的大部分访问者或团队在土耳其,伊斯坦布尔的服务器可以把距离带来的延迟降到最低。Seturack 只有一个位置,就是伊斯坦布尔。距离较短往往会降低延迟,但网络路径既取决于距离,也同样取决于各服务商之间如何互联。所以请相信您自己的测量,而不是任何说法。
如果您的受众在国外
如果您的受众生活在其他国家,延迟会如表中所示升高。这并不总是问题。对于管理面板、博客或文件共享,多出一些延迟往往察觉不到。在游戏和实时应用中则影响很大。在 Seturack,服务器位于伊斯坦布尔,但订单可以从世界任何地方下。服务国外的受众是可行的,只是规划时要知道延迟会如表中所示升高。您可以这样做:
- 使用内容分发网络(CDN),它会缓存图片、脚本和样式表,并从靠近用户的节点提供。动态页面仍然来自您的服务器。
- 在服务器上开启 HTTP/2 或 HTTP/3 和压缩,让多个请求共用一个连接。
- 减少每个页面的请求数量和图片大小。
- 如果大部分用户集中在一个地区,选择服务器位置时要考虑这个地区。
自己测一测
从您自己的网络测量到服务器 IP 地址的延迟:
ping -c 10 SERVER_IP
在 Windows 上,用 -n 代替 -c。输出中的平均值就是往返时间。不要只看平均值:如果 min、max 和 mdev(macOS 上是 stddev)之间的差距很大,说明延迟不稳定(抖动)。丢包也会毁掉游戏和语音应用。请在一天中的不同时间重复测量,因为繁忙时段的数值可能不同。要查看路径上哪里变慢、哪里丢包,请运行:
mtr -rwc 20 SERVER_IP
在 macOS 上,mtr 需要另外安装。要分解网站上时间花在哪里,请使用:
curl -o /dev/null -s -w "dns:%{time_namelookup} connect:%{time_connect} tls:%{time_appconnect} firstbyte:%{time_starttransfer} total:%{time_total}\n" https://example.com
这些数值是累计的,单位是从请求开始算起的秒数。firstbyte 与 tls 之间的差,是一个往返加上服务器准备页面所花的时间。如果这个差很大,问题就不在距离,而在应用或数据库。
慢真的是延迟造成的吗?
并非每次变慢都来自距离。一部分延迟来自用户自己的网络(Wi-Fi、移动数据)。根据您的测量结果,可以这样区分原因:
| 您看到了什么? | 可能的原因 | 操作 |
|---|---|---|
| Ping 很高,而且 mtr 显示延迟沿路径稳步上升 | 距离或网络路径 | 把服务器移近您的受众,使用 CDN |
| Ping 很高,但 mtr 的前几跳就已经很高 | 您自己的本地网络(Wi-Fi、移动数据) | 试试有线连接或换一个网络 |
| Ping 很低,但 firstbyte 和 tls 之间差距很大 | 服务器准备页面很慢 | 缓存、数据库查询、RAM 和 vCore |
| Ping 和 firstbyte 都正常,但页面打开很晚 | 页面太重、请求太多 | 压缩图片,减少脚本 |
对于服务器端的问题,还要检查内存和处理器的使用情况。如有需要,可以在面板中升级服务器。
如果您想把服务器放在伊斯坦布尔,可以在价格页面算出您的价格。
评论0
暂无评论
成为第一个分享想法的人。
请登录或注册后发表评论。