现象描述
网站访问卡慢。
可能原因
一次完整的 HTTP 请求包括域名解析、建立 TCP 连接、发起请求、服务器接收到请求进行处理并返回处理结果、浏览器对 HTML 代码进行解析并请求其他资源,以及对页面进行渲染呈现。其中,HTTP 的请求过程经历了用户本地客户端、客户端到接入服务器之间的网络节点以及服务器。在这三个环节中,任意一个环节出现问题都有可能导致网站访问卡慢。
可能原因 | 处理措施 |
本地网络异常 | |
网络链路存在丢包或延时高的情况 | |
实例 CPU、内存、宽带使用过高 | |
服务器负载引起资源消耗增大 |
故障处理
检查并测试本地客户端访问域名的速度
1. 通过本地客户端访问 华佗诊断分析系统,测试本地访问各域名的速度。
2. 根据测试结果,确认本地网络是否存在问题。
测试结果示意图如下:
我们可从结果中获知访问各个域名的延时情况,以及网络是否正常。如果网络异常,请联系您的网络服务提供商协助定位解决。
如果正常,请 检查是否因为网络链路存在丢包或延时高的情况。
检查是否因为网络链路存在丢包或延时高的情况
1. 通过本地客户端 ping 服务器公网 IP,确认是否存在丢包或延时高的情况。
若存在丢包或延时高的情况,请使用 MTR 进行诊断,具体操作可参见 服务器网络延迟和丢包处理。
若不存在丢包或延时高的情况,请执行 步骤2。
2.
使用
dig/nslookup
命令,查看 DNS 的解析情况,排查是否是 DNS 解析引起的问题。
您也可以直接使用公网 IP 访问对应页面,排查是否为 DNS 的问题导致网站访问卡慢。若是 DNS 的问题导致网站访问卡慢,请检查 DNS 解析,具体操作可参见 解析生效相关。
若不是 DNS 的问题导致网站访问卡慢,请 检查并登录服务器查看实例资源的使用情况。
检查并登录服务器查看实例资源的使用情况
1. 登录 云服务器控制台。
2. 选择待检查实例的 ID/实例名,进入该实例详情页面。
3. 在实例的详情页面,选择监控页签,查看实例资源的使用情况。如下图所示:
如果存在 CPU/内存使用过高的情况,请参见 Windows 实例:CPU 与内存占用率高导致无法登录 和 Linux 实例:CPU 与内存占用率高导致无法登录 进行排查。
如果存在带宽使用过高的情况,请参见 带宽占用高导致无法登录 进行排查。
如果实例资源使用正常,请 检查并判断是否因为服务器负载引起资源消耗增大。
检查并判断是否因为服务器负载引起资源消耗增大
根据实例资源使用情况,判断是否为服务器负载引起资源消耗增大。
若是服务器负载引起资源消耗增大,建议优化业务程序或 升级服务器配置。您也可以通过购买新的服务器,分担现有服务器的压力。
若不是服务器负载引起资源消耗增大,建议查看日志文件,定位问题并进行针对性的优化。