1、问题说明nginx
运营反馈近期客户端页面加载变慢,常常须要10~20s以上的时间才能显示出,甚至加载不出来,须要手动退出,从新打开才能出现。markdown
2、问题分析oop
- 首先怀疑是DNS问题,用的是运营商的做为首选DNS,修改为114.114.114.114 没有效果。
- 经过输出请求链接返回时间,发现部分 https 资源访问极慢,切换到 http 地址,访问变快
- 初步怀疑是 ssl 证书引发的,测试发现,加载缓慢的https地址的证书都是 digicert 的,证书校验ocsp地址为 ocsp.digicert.com,经过chinaz 检测,目前这个地址国内访问很慢

- 经过替换加载连接:www.baidu.com/ (GlobalSign证书) suowo.cn/ (Digicert证书, oscp地址与咱们相同) 验证。 百度加载很快,suowo.cn 的表现和咱们一致,加载须要好久,基本确认就是证书的问题。
3、解决方案测试
- 方案一: 目前咱们使用的是在阿里云上申请的单域名免费证书,只有 Digicert 的国外验证地址可选。 考虑替换国内 ocsp 验证的收费证书。
- 方案二:客户端临时替换成加载 http 页面,根据页面来切换请求的地址是 http/https。
- 方案三:开启nginx 和 cdn 的 OCSP stapling, 因为国内cdn节点访问 ocsp 地址也很慢,通过验证,仍是会间歇性访问超时