文章来自:
商务合作:请加微信2230304070
精选文章正文
问题场景
作为程序员的你,你经常会遇到:用户向你反映说你开发的网站访问速度很慢,但是该用户访问其他网站很正常。出现这种问题,你是如何分析原因、如何解决问题呢?
可能出现的问题
1 服务器出口带宽不够用。这是一个很常见的瓶颈。一方面,可能是本身购买的服务器出口带宽就很小(企业购买带宽相当昂贵),一旦用户访问量上来了,并发量大了,自然均分给用户的出口带宽就更小了,所以某些用户的访问速度就会下降了很多。另一个,就是跨运营商网络导致带宽缩减,例如很多公司的网站(服务器)是放在电信的网络上的程序开发,而如果用户这边对接的是长城或者说联通的宽带php开发网页游戏,运营商之间网络传输在对接时是会有限制的,这就可能导致带宽的缩减。
解决:出口带宽的问题,这个很简单,加带宽,有钱就多买带宽,很简单。
2 数据库表结构不合理。
解决:在创建MySQL数据库表时,把经常作为查询条件的字段设置为索引,这样可以提高数据的查询速度,从而提高网站的打开速度。
3 数据库查询语句不合理。PHP+MySQL动态网站,经常使用数据库select操作。
在使用select操作时php开发网页游戏,切忌不要轻易使用select * from tablename,因为这样的查询速度慢,并会占用较多内存,影响PHP程序的整体运行速度,进而影响网站的打开速度。
解决:建议使用针对特定字段 select查询语句,例如 select fieldname from tablename。这样的查询方式会降低MySQL执行时间,提高效率。
4 程序代码设计与前端的问题
PHP程序冗余。搭建PHP+MySQL网站时,会发现有些程序中存在大量冗余,延长了程序执行时间。例如重复的SQL查询操作,反复的变量赋值等。
解决:出现这样的情况时,最好找专业人士帮你优化一下程序,提高程序整体运行时间。
5 PHP程序大量读写磁盘。PHP+MySQL网站程序会大量执行磁盘的读写操作,尤其是磁盘的写操作,将占用大量的磁盘IO,导致程序运行缓慢。情况严重的还会使服务器死机。
解决:当遇到这样情况时,应尽量减少不必要的磁盘写操作,并且对磁盘进行相关优化操作,例如磁盘整理,从而提高磁盘整体运行效率。
6 尽量使用静态页面。
解决:在使用PHP+MySQL搭建网站时,尽量使用可以生成静态页面的开源程序。
7 网页上存在大量图片或flash。网页上存在大量图片或flash时创作人,也会影响网站的打开速度。
解决:减少网页上的图片或flash,或者优化减小图片的大小,以提高网页的打开速度。
8 服务器软件。
解决:尽量避免在VPS或者独立服务器上安装不必要的软件,防止服务器运行速度慢,导致网站打开速度慢。
9 网页上存在大量JS代码。大量的JS代码也是引起网站打开速度慢的一个重要原因,尤其是一些不知名的联盟广告代码,对网站打开速度的影响非常明显。
10 过多的引用了其他网站内容。包括引用其他网站的图片、视频文件等,如果直接在页面引用别的网站的东西,而那个网站打开速度慢,或者那个网站的该页面已经不存在了,那么打开的速度就会非常慢。