服务器负载暴涨以后

作者:田逸(sery@163.com) from:http://b.formyz.org/2011/1124/53.html
正在赶写演讲的ppt,突然听到短信想起,没理会,以为是广告呢。刚放下念头,短信接连不断的响起来,不用想,准是哪个服务器报警了。

打开nagios监控见面,发现3个服务器(3个服务器处于同一个集群下,业务为论坛,同时在线人数大概4万人)的load过高,处于warning状态

1、 先查看访问流量,通过对比,跟以前没什么差别。
2、 查看每个服务器的进程数和cpu使用情况,跟以前也没什么差别。

3、 查看系统日志,每个服务器都有“TCP: Treason uncloaked! Peer 113.247.241.146:21345/80 shrinks window 2128147967:2128149427. Repaired.”

4、 查看php日志,大量“[WARNING] fpm_request_check_timed_out(), line 158: child 25379, script '/mnt/html/bbs/forum.php' (pool default) execution timed out (120.306361 sec), terminating”。打开论坛首页,居然花了120多秒。我在php配置文件里设置的执行中断时间是120秒,超过这个值则关闭该子进程。看来应该从这里下手了。

先问问其他人,最近有没有改程序,有没有加插件?答:“没有”。我再仔细检查了系统:

(1)       查看有没有文件系统损坏而不能写入

(2)       查看分区是否满(实际上满了的话,有短信报警的)

(3)       查看tcp连接状态,还没以前多呢,看来不是系统的问题

那么,与之有关联的还有数据库、nfs文件系统以及memchached。先检查容易的,好!先检查nfs,正常;再检查memcached,正常。看来估计数据库有什么问题了。
登录数据库,先查看数据库错误日志,tail –f 一下,滚动输出,看来问题找到了。输入的内容主要有一下几行:

[ERROR] Got error 134 when reading table './uc_mumayi/cdb_uc_members'

[ERROR] Got error 134 when reading table './uc_mumayi_net/cdb_uc_members'

[ERROR] /usr/local/mysql/libexec/mysqld: The table 'pre_common_session' is full

接下来,从处理表满开始,把它的行数值设置巨大一点,我设置的是1000万,指令为:mysql>ALTER TABLE pre_common_session MAX_ROWS=10000000; 完毕后3个web服务器的负载马上就下降了。从报错信息中,可以判断有2个表可能损坏了。检查一下,如果真坏了,就修复一下吧!

(1)检查第一个表:mysql> check table cdb_uc_notelist;输出为+---------------------------+-------+----------+-----------------------------------------------------------+
| Table                     | Op    | Msg_type | Msg_text                                                  |
+---------------------------+-------+----------+-----------------------------------------------------------+

| uc_mumayi.cdb_uc_notelist | check | warning | 11 clients are using or haven't closed the table properly |

| uc_mumayi.cdb_uc_notelist | check | warning | Size of datafile is: 260372       Should be: 259760       |

| uc_mumayi.cdb_uc_notelist | check | error    | Wrong bytesec: 101-114-110 at linkstart: 258412           |

| uc_mumayi.cdb_uc_notelist | check | error    | Corrupt                                                   |

+---------------------------+-------+----------+-----------------------------------------------------------+
4 rows in set (0.04 sec)
真损坏了,修复一把:mysql> repair table cdb_uc_notelist; 输出为+---------------------------+--------+----------+-----------------------------------------------+
| Table| Op     | Msg_type | Msg_text                                      |
+---------------------------+--------+----------+-----------------------------------------------+

| uc_mumayi.cdb_uc_notelist | repair | info     | Wrong bytesec: 101-114-110 at 258412; Skipped |

| uc_mumayi.cdb_uc_notelist | repair | warning | Number of rows changed from 5715 to 5742      |

| uc_mumayi.cdb_uc_notelist | repair | status   | OK                                            |

+---------------------------+--------+----------+-----------------------------------------------+
(2)修复第2个表,方法同上。
(3)再次检查表状态。
(4)让管理员从后台登录,查看是否正常。

服务器负载暴涨以后...相关推荐

  1. LVS详解及基于LVS实现web服务器负载均衡

    前言 LVS(Linux Virtual Server)Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一.通过LVS提供的 ...

  2. inux 下查看服务器负载均衡

    linux 下查看服务器负载均衡 uptime 20:57:21 up  9:18,  1 user,  load average: 0.73, 0.66, 0.50 #显示当前用户数,以及最近1 分 ...

  3. 网络负载均衡相关技术-服务器负载

    服务器负载均衡( SLB) 是目前最常用的,它是通过将一台服务器虚拟化,表示成一组服务器,即一个服务器群,用来平衡各个服务器的信息量,控制对某一台服务器的访问量.

  4. 负载均衡服务器性能,服务器负载均衡:确保应用服务的高性能与高可用

    随着互联网的快速发展和业务量的不断提升,基于网络的数据访问流量迅速增长,特别数据中心.大型企业及门户网站,日益丰富的内容和信息输出大大加速了服务器的资源消耗.加上大部分网站都需要提供24小时不间断服务 ...

  5. Nginx+Keepalived实现Web服务器负载均衡

    说明: 操作系统:CentOS 5.X 64位 Web服务器:192.168.21.127.192.168.21.128 站点:bbs.osyunwei.com和sns.osyunwei.com部署在 ...

  6. PHP监控linux服务器负载

    前面我们说到<PHP执行linux系统命令>:http://www.ccvita.com/390.html,即是为本文做铺垫.在实际项目的应用中,我们由于各种条件的现实,利用PHP来实现服 ...

  7. 服务器负载均衡的基本功能和实现原理

    负载均衡设备作为纵跨网络2-7层协议的设备,往往放置在网络设备和应用设备的连接处,对工程师在网络和应用基本知识方面的要求远高于其他设备,所以我们要在基本功能的理解上下更多的功夫.负载均衡设备还有另外一 ...

  8. php 负载监控_PHP监控linux服务器负载

    前面我们说到<PHP执行linux系统命令>:http://www.ccvita.com/390.html,即是为本文做铺垫.在实际项目的应用中,我们由于各种条件的现实,利用PHP来实现服 ...

  9. Keepalived高可用集群来实现web服务器负载均衡集群

    Keepalived高可用集群来实现web服务器负载均衡集群 一.Keepalived的介绍 Keepalived是一个提供HA重要的底层工具,最早期的作用是为ipvs提供HA功能的,还是一个可以提供 ...

最新文章

  1. 基于注解的 AOP 配置
  2. 初识sparklyr—电影数据分析
  3. Hadoop书籍和网络资源介绍
  4. JVM性能调优监控工具专题二:VisualVM基本篇之监控JVM内存,CPU,线程
  5. java 大数据处理之内存溢出解决办法(一)
  6. 不同外置模拟器用Android Studio连接指令
  7. mongodb php 安装配置,MongoDB 基本安装配置
  8. ISP 图像传感器camera原理
  9. 《C++ Primer第五版》习题答案
  10. 文件路径转换为数组php,php – 如何将目录结构转换为url数组
  11. org.apache.axis.ConfigurationException: No service named ldapOperate is available解决方法
  12. Linux命令使用练习三
  13. 为开发用途mac电脑瘦身
  14. mysql INSERT INTO table2 (column_name(s)) SELECT column_name(s) FROM table1;
  15. python访问服务器注册表,使用Python的Windows注册表访问(Winreg)
  16. RSA算法原理及数字签名技术
  17. redis.conf文件下载与配置
  18. 关于差分放大器双电源改单电源问题的讨论(AD628)
  19. Spring源码学习第四天==>初识Refresh()
  20. 淘宝详情页分发推荐算法总结:用户即时兴趣强化

热门文章

  1. Linux 网络 tcp C/S通信模型
  2. 【分享】工作流支持邮件提醒相关配置
  3. [PA2014]Pakowanie
  4. Centos6 破解系统密码
  5. return2libc学习笔记
  6. internet 协议入门
  7. ⑨⑧借鉴成功者经验,吸取失败者教训
  8. Linux Ubuntu上架设FTP
  9. Git学习笔记07-删除文件
  10. 技术不是工程师能力的全部:闲看《因为所谓的代码性能不高而被离职的程序员》...