如何应对服务高并发情况

关于超人投票应用,很多情况下会出现会访问量过大,导致服务器502或者加载很慢等情况,对此整理了一个如何解决此类问题的分析说明,其他一些应用场景同样适用。注:本次示例基于微擎框架+ 宝塔面板说明。

如果出现高并发情况,首先先排查问题,先不要急于升级配置,可能不是因配置导致负载过高,导致升级后资源浪费,还花冤枉钱。怎么排查问题呢?

首先可能直观的通过宝塔面板的首页=》状态,查看一下负载和CPU的占比,如图所示:
image

如果负载不高,访问比较慢,去服务器云控制台检查服务器带宽是否跑满,到上限,需要升级带宽(前提没有配置负载均衡的前提下,如果是配置了负载,升级负载的带宽)。

如果负载和CPU过高,可以连接远程登录终端,查看进程占比,具体终端的指令可自行百度,今天只说文章重点,执行 指令:top,各进程是按照CPU的占用量来排序的,如图所示:
image-(1)

具体根据自己服务器的占比分析,看最后一行字段说明,正常投票的话,mysql 和php-ftm进程会比较高。

怎么样解决mysql占比高的?

1.看MySQL是不是有慢日志。本地服务器的数据库的话,可以通过宝塔运行的MySQL软件,如图:

image-(2)

如果是有,优化慢日志的sql语句,索引的问题可处理,如果是模块本身的话,需要开发者去处理,然后检查一下微擎是否配置了缓存,怎么配置参考教程:https://www.w7.wiki/operation/2903.html

2.升级服务器的配置。不确定自己需要升多少,可以先升一倍的配置,观察一下。刚才说的只是针对于服务器内安装的mysql。如果是使用的云数据库,直接升级云数据库的配置即可。云数据库的话,可以配置单台,也可以是配置读写分离,一主多从。关于读写分离配置参考教程:https://www.w7.wiki/server/2637.html

怎么样解决php进程占比高的?

1.关闭一些不影响应用的进程,虽然占比较少,但也会影响性能。比如:站点的访问日志,如图:
image-(3)

PHP异常错误信息的抛出,如图:
image-(4)

2.升级服务器配置,简单直接。可能你的服务器是一个包年包月的,直接升级配置,价格较高不合适。这时你可以配置一个负载均衡,从服务器的可以购买按量付费的,并发情况毕竟不是持续性的,正常后,可以销毁临时按量付费的。
负载均衡配置教程,这块腾讯云和阿里云都有详细的教程,如果对上面的一些操作一脸茫然,别担心超人有服务项目,点击 超人服务

本文来自投稿,不代表微擎百科立场,如若转载,请注明出处:https://www.w7.wiki/server/5190.html

发表评论

登录后才能评论