网站访问慢要根据具体的架构去排错。我假设架构如下
外层cdn 源站nginx代理 下面是tomcat和mysql主从+redis
首先我们可以访问自己的网站,f12打开调试模式查看网络状态,看是否有那些网页或者链接加载非常慢,根据这些页面和链接查看数据的流向来判断每一层的架构是否正常,然后根据具体的架构去调优。
我们可以在测试机上把host改为源站nginx代理ip然后访问,如果是正常速度则是cdn问题,如果慢则是源站的问题,源站的问题就要根据这个架构一层一层向下排查很快能判断问题所在。
cdn问题:
查看cdn的日志找出流量较大的url或者文件:
如果是图片就要进行裁剪优化,如果是js最好压缩处理等。
可以使用cdn预热,主动加载一些热门数据进入缓存。
cdn缓存设置的问题,导致缓存命中率低,回源率高。
url带参数的话cdn会因为参数不同重新访问源站,所以最好是做动静态分离,只加速静态资源。
数据库性能问题:
数据库主要性能的瓶颈在于磁盘io,可以查看是否缓存设置存在问题,导致数据库大部分情况是访问磁盘读取数据,可以查看inn