延迟和地址分开记
往返时间是数据包从用户网络走到机器、再走回来的时间。 它由距离、海缆、运营商出口和当天拥塞决定。 地址归属是注册信息和地理库把这个 IPv4 标成哪个国家。 两列都要填,不能用一列代替另一列。
本文里的往返,都是相对一台部署在日本东京的机器来说的。 这台机器上的地址,地理库多半会标成日本。 人在上海,仍然要走上海到东京的那段路。 把地址标成日本,不会把这段路缩短。
反过来也一样。用户已经在东京,页面仍然慢,先查往返时间和应用自己来回了几次,不要先加一个 IP。 多出来的地址还在同一台机器上,路径不变。 管理员坐在哪里,单独记一行,不要和访客合成一个数。 SSH 手感顺,只说明管理员离机器不远,说明不了访客。
延迟看用户在哪、路径堵不堵。日本本地地址看有没有人核对该国。没有人核国家时,默认那一个地址就够登录和跑站点。
按用户所在地估往返
先把用户写成城市加上接入类型:家里宽带、手机、公司出口。 至少留三个样本。公司 VPN 和你自己的跳板,都不是访客的路径。
光纤里大致每 200 公里对应 1 毫秒单程,往返要加倍,再加路由和排队。 下表是这个量级,不是某一家运营商的承诺,也不是交付之后的保证。 你的 mtr 一旦打出来,表就作废。
| 用户主要在 | 用来对预算的往返量级 | 测量前先接受的事 |
|---|---|---|
| 日本,和机房同一都市圈 | 常见个位数到二十多毫秒 | 普通网站和 API 通常够紧。联机和行情还要看最差的一成 |
| 日本,跨都市 | 大约十到四十毫秒 | 仍是国内路径。出口一般不是主因 |
| 首尔、台北 | 大约三十到七十毫秒 | 跨海一跳。白天和凌晨分开记 |
| 香港 | 大约五十到八十毫秒 | 用户集中在香港,到香港更近。用户在日本,到东京更近 |
| 中国大陆主要城市 | 出口顺时可以到几十毫秒,堵时超过一百毫秒 | 差的是国际出口那一跳,不是城内那一跳。不要背一个固定数字 |
| 新加坡、曼谷、马尼拉 | 大约七十到一百毫秒 | 用户主体若在东南亚内部,东京不是这组人的最近点 |
| 美国西海岸、欧洲 | 西海岸大约一百到一百五十毫秒;欧洲大约两百毫秒以上 | 适合少数人管理。不适合给当地用户当连续点击的主站 |
和香港放在一起看,比的是用户离哪一边更近。 用户在香港或华南沿岸,到香港的往返通常短于到东京。 用户在日本国内,到东京更短。 用户散在首尔、台北和东京,东京更靠近这一组的中间。 这是距离。线路当天好不好,仍看从用户网络打出来的测量。
检索里常见的 CN2,指的是中国电信侧一类优质国际出口的商品名。 它不是机房所在城市,也不是地址属于哪个国家。 同一台机器,从不同运营商出去,等待可以差一倍。 列表里有没有这四个字母,代替不了从业务网络打一次 mtr。
表里的毫秒用来决定要不要花时间测。测完之后只保留你自己的中位数和最差一成。别人的截图、广告页上的「低至几毫秒」,都不进这张预算。
从用户那一侧测量
业务高峰测一次,凌晨再测一次,用来区分「路远」和「出口堵」。 每个样本记三列:最小、中位数、最差的 5%。 中位数代表平常手感。最差的一成代表用户会不会偶发卡住。 只看最小,会把线路写成永远最好的那一下。
ICMP 可能被运营商压低优先级,所以 ping 只做第一眼。 接着看 TCP:对 443 或 22 做一次握手计时,或直接对站点首页看首字节时间。 mtr 用来找抬升发生在哪一跳。 抬在用户自己的城域网,换机器所在城市帮助有限。 抬在国际出口,瓶颈在出境。 抬在跨海之后的最后几跳,才和机器所在城市有关。
ping -c 50 目标
mtr -rwzbc 50 目标
curl -o /dev/null -s -w 'ttfb:%{time_starttransfer} total:%{time_total}\n' https://目标/
还没有机器时,先对你已经在用的、位置明确的东京目标测。 有了机器之后,用同一条用户网络再测一次,对比中位数有没有变。 不要拿 VPN 出口的数字去给访客下结论。
应用预算要把往返次数乘进去。 页面如果串行打 6 个接口,用户感受到的大约是 6 倍往返,再加服务器处理。 数据库和程序分在两个城市,每条查询都付一次跨城往返。 这种结构下,先把程序和数据库放到同一处,比先争论地址归属有用。
上面三个数是手感分界,仍然被你的测量覆盖。 普通网站的中位数进了 80 毫秒,多数页面还能用;再高就先减串行请求。 联机和行情尽量把中位数压进 40 毫秒,偶发三百毫秒的尖峰比中位数更伤。 管理员 SSH 到 150 毫秒仍能敲命令。这行只代表管理员。 图形远程桌面在 80 毫秒以内比较顺,过了 150 毫秒就黏。 每天要用图形界面的人,人要离机器近,或者把图形留在本地,用 SSH 做管理。 Linux 走 SSH,选了 Windows Server 之后走 RDP,两条路径分开记。
测完怎么读
-
1
写下访客,管理员另起一行
城市加上家宽、手机或公司出口。三张网络都留。跳板和 VPN 不进访客那一列。
-
2
高峰和凌晨各打一轮
记录最小、中位数、最差 5%。两轮接近,说明主要是距离。高峰明显变差,说明出口或中间跳在堵。
-
3
标出延迟从哪一跳抬升
城域网内抬升,换城市帮助不大。国际出口抬升,先处理出境。最后几跳抬升,才回到机器所在城市。
-
4
乘上串行次数
页面、接口、数据库各算各的往返次数。一来一回的接口和连问八次的页面,不是同一个预算。
什么时候才要日本地址
地址要不要落在日本,只问一件事:有没有下游在核对「这个 IP 是不是日本」。 没有这道核对,延迟够不够与地址国家无关。
需要拿真实地址去让对方核的,通常是这几类。 日本当地的支付、年龄或内容许可只放行日本地址。 合作方防火墙把白名单写成日本网段,你得把分配到的地址交给对方测,而不是口头说机房在日本。 面向日本邮箱投递时,对方信誉系统会看发送地址的国家。 日本本地的检索或地图接口按国家做准入。 这些场景里,用默认那个 IPv4 先让对方查一次。核过了再谈要不要第二个。
下面这些先不要为「本地地址」加购。 用户在日本,但没有任何服务核国家。默认那一个已经绑在这台机器上,SSH、RDP 和站点都从它出去。 你真正想缩短的是中国大陆或欧洲用户的往返。日本地址改不了他们到机器的距离。 前面有 CDN,访客连的是离他近的节点,源站国家对访客不可见。 你希望地理库把地址显示成中国或香港。部署在东京的地址不会变成那个结果。
地理库、云厂商的国家字段、浏览器语言,三者会不一致。让合作方用他们生产环境里的库查你的地址。自己在网页上搜一次归属,经常和对方的结果不是同一套数据。
多个地址不会变成多个国家。 额外 IPv4 按个加,仍从同一台机器出去,地理库的国家通常不变。 要两个站点分开信誉、或某个客户要单独出口,再加个数。 个数怎么计,见 按个加地址 那篇。这里只定一条:加地址不是延迟旋钮。
带宽和加地址不动往返
端口速率决定同一时刻能推多少数据,不决定一个小包来回要多久。 页面只有几十 KB、用户却觉得顿,先看往返和请求次数。 监控里端口已经打满、下载速度上不去,才是带宽的事。 默认 250 Mbps,不限流量。端口打满再升到 1 Gbps 或 2 Gbps。 升完之后,原来 60 毫秒的往返还是 60 毫秒。
大文件下载反过来:往返已经很低,速度仍上不去,再看端口有没有满、对端有没有限速。 不要用下载测速的兆比特数去回答「延迟多少」。 那是吞吐。延迟是来回一次的时间。
| 现象 | 先看 | 先别做 |
|---|---|---|
| 单用户打开页面发呆,端口很空 | 中位数、串行次数、抬升的那一跳 | 把 250 Mbps 升到 1 Gbps |
| 很多人同时下载,端口打满 | 带宽档位和是否不限流量 | 再买几个 IP 指望变快 |
| 合作方报地址国家不符 | 把默认地址交给对方的地理库 | 用加带宽代替换地址归属 |
| 只有管理员觉得 RDP 黏 | 管理员自己的往返,和访客分开 | 为了管理员手感去改访客的站点结构 |
测量通过后再对规格
三张用户网络的中位数都落进预算,合作方也确认地址国家符合要求,再看机器能不能接住计算和磁盘。 处理器是 AMD EPYC 7543P,32 核 / 64 线程,2.8–3.7 GHz,一台只给一个租户。 内存是 DDR4-3200 ECC RDIMM,128GB 月租 $465,256GB 月租 $592。下单后不能加条。工作集放不进 128GB,就选 256GB。 磁盘是 2 × 1TB NVMe,无硬件 RAID,盘独立直连,可用容量按 2TB 计,不是镜像之后的 1TB。 还要空间,可以再加最多 2 块 2TB,每块月租 $83,仍然是直连,不进硬件阵列。
Linux 用 SSH 连默认那个 IPv4。需要 Windows 时,Server Standard 月租加 $21,Datacenter 加 $27,接入改为 RDP。 系统语言可选英、繁、简。免费系统里默认是 Ubuntu 24.04,也可以选 Proxmox、Debian、AlmaLinux 等,不另收费。 带宽加价是 1 Gbps 加 $251、2 Gbps 加 $749,都是不限流量。 额外地址每个月加 $2,额外 0–255 个,加上默认那一个,合计最多 256 个,不按子网卖。
月租等于机型价,加上加盘块数乘 83,加上带宽加价,加上额外地址个数乘 2,再加上系统加价。 应付等于月租乘月数。月付、季付、半年付、年付都按这个倍数,不打折,没有安装费。 这些数字只在两列测量都通过之后用来对规格。 延迟够不够、要不要日本地址,以你的 mtr 和合作方的核对为准。 周期怎么乘,到 价目页 看。内存、盘、带宽和地址个数,到 配置页 改。