锟斤拷站知识

【网站打开慢】网站打开慢原因分析
发布人:求是文化传播 发布时间:2019/3/12 点击:4754次

一、前言

网站打开慢这个问题,算是老生常谈了,在实际的生产的环境中,我们会经常遇到这样的问题。作为一个运维工程师,我们该从哪些角度去分析问题,判断问题,并最终解决问题。那么首先我会从几个方面分析这个问题,也许可能有纰漏或者说得不是很准确,大家借鉴就好,仅做参考。

 

二、分析可能的原因

2.1 网络带宽,这是一个很常见的瓶颈。

2.2 cpu、硬盘、内存配置过低,服务器负载不起来。

2.3 网站的开发代码不够完善,例如mysql语句没有进行优化,导致数据库的读写相当耗费时间。

2.4 数据库的瓶颈。当我们的数据库的数据变得越来越多的时候,那么对于数据库的读写压力肯定会变大。

 

三、针对上面的可能的原因,有哪些方法和工具可以定位检测

1、首先根据用户反馈的问题,自己也打开下网站,看是否会出现用户反映的问题。如果没有,则有可能是用户的问题,如果有那就有可能是服务器或网站的问题。

总之,一句话,排查是用户的问题还是服务器或网站的问题。

 

2、发现是服务器或网站的问题,根据浏览器自带的调试功能,调试网络查看各种数据的加载速度,可以看到每块数据的速度。

 

这里分三种情况:

a) 打开图片过慢

b) 打开html静态页面过慢

c) 打开php或java程序过慢

判断方法:

一般网站分前端和后端,这里以我们公司为例,网站web服务架构前端nginx+后端tomcat,前端处理静态页面请求,后端处理动态页面请求。可以在前端nginx插入一个html页面,看访问是否正常。或在后端tomcat插入一个jsp文件,看访问是否正常。这样可以很好的判断是前端nginx还是后端的tomcat出现故障。

 

3、检查服务器硬件或网络的负载情况,例如硬盘、内存、cpu、带宽等。最好做个监控,能及时响应问题,及时处理,这对运维人员很关键。

 

4、如果硬件或网络带宽都正常,这个时候需要查看一下nginx、tomcat、数据库的错误日志,观察数据库的慢查询日志等。分析是否有语句查询过慢,需要优化等。

 

四、解决或优化的方法

1、带宽的问题,增加带宽就好。

2、Mysql语句优化的问题,需要开发人员的配合。

3、数据库太庞大,拆库或拆表。

4、数据库做高性能方案,比如多实例,或读写分离。

5、配置缓存数据库。

6、配置CDN。

7、从整个网站架构上考虑,是否搭建web集群等高并发方案,从整体架构上去优化。