问题描述:linux服务器cpu占比达到100%,站点无法正常访问,宝塔面板进入后卡顿,负载显示也是持续100%(下方测试系统为CentOS 8.1)

排查可能:1.使用netstat命令查看目前的链接IP数,看是否有异常IP大量链接:

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n(查看显示所有连接IP及连接数量)

2.看到上方如果有大量连接的IP,如外国的IP地址,我们可以在宝塔后台系统防火墙内屏蔽该外国IP段,屏蔽后查看资源占用情况是否有下降

除宝塔外,也可以使用linux命令增加防火墙策略:

使用firewall-cmd --list-all命令查看现有的防火墙策略,如下图,红框内为刚刚添加的策略:

禁止某个IP访问:

firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="77.75.79.54" drop'

上图显示已设置成功。然后执行firewall-cmd --reload命令重新加载防火墙

再查看防火墙列表,刚刚添加的规则已经存在。

3.使用top命令查看占用资源较多的进程,发现php-fpm和mysqld占比较大,进入宝塔对应php版本,调整对应的并发数和最大空闲进程数

2核4G的配置笔者调整为上述的配置,也可以安装下面的扩展

安装完毕后重启php,观察一段时间看资源占用情况是否有改善,mysqld的优化可点击对应的优化推荐进行设置优化,设置完毕后保存,重启mysql。

以上php和mysql设置完毕后,观察资源占比情况是否有改善。

4.查看所有网络连接,观察是否有异常。(可配合本篇第一条分析使用)

netstat -a 查看所有连接

netstat -n 以数字形式显示ip地址和端口号

netstat -na 以数字形式显示所有ip地址和端口号

netstat -a -o 显示所有端口号与进程的对应关系

需要留意最后的状态情况进行分析。

6.设置完毕后可重启服务器,查看资源占用情况,如果资源占比还是接近100%,top命令查看有无异常的进程,通过kill 进程号命令终止异常进程,同时注意观察资源占比情况变化。

7.查看php慢日志和mysql慢日志,分析站点程序结构和错误,找出大量占用资源的原因进行优化。

linux服务器CPU占用100%,宝塔负载100%情况问题排查处理记录(CentOS 8.1系统)的更多相关文章

  1. Linux服务器CPU、内存、磁盘空间、负载情况查看python脚本

    [本文出自天外归云的博客园] 网上搜,东拼西凑,组装了一个可以查Linux服务器CPU使用率.内存使用率.磁盘空间占用率.负载情况的python脚本. 脚本内容如下: # -*- coding:utf ...

  2. 转 linux 服务器内存占用统计

    linux 服务器内存占用统计  原文: https://www.cnblogs.com/eaglediao/p/6641811.html 当前内存占用率的计算,是根据top命令显示的Mem.used ...

  3. 查看linux服务器CPU相关

    查看linux服务器CPU相关: 1.查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 2.查看 ...

  4. 查看Linux服务器CPU总核数

    下面介绍查看Linux服务器CPU总核数的方法. 通过/proc/cpuinfo可查看CPU个数及总核数. [root@kevin ~]# grep processor /proc/cpuinfo | ...

  5. 一次服务器CPU占用100%的问题排查

    今天写了一段垃圾代码,然后上服务器上运行,cpu瞬间飙到了100%,现记录一下问题排除过程~ 1. 问题代码 package qinfeng.zheng.mockmvcdemo; import org ...

  6. Linux 下 CPU 使用率与机器负载的关系与区别

    原文链接:  http://blog.chinaunix.net/uid-28541347-id-4926054.html 当我们使用top命令查看系统的资源使用情况时会看到load average, ...

  7. linux服务器内存占用太高-释放内存

    修改/proc/sys/vm/drop_caches,释放Slab占用的cache内存空间(参考drop_caches的官方文档): Writing to this will cause the ke ...

  8. Linux 服务器下多网卡的负载均衡

    Linux 服务器下多网卡负载均衡的实现   一.引言    现今几乎各行各业内部都建立了自己的服务器,由于服务器的特殊地位,它的可靠性.可用性及其 I/O 速度就显得非常的重要, 保持服务器的高可用 ...

  9. Linux 服务器CPU占用率100%,使用率高解决方案

    机器高负载告警一般是CPU负载在99-100%,同时伴有大量的网络出包和入包量,常见的原因是机器在某个时段进行LOG,数据等备份操作,或者服务器被黑导致 输入top命令查看CPU使用情况 top 通过 ...

  10. linux模拟cpu占用100%脚本

    转至:https://www.cnblogs.com/opma/p/11607434.html 脚本如下: #! /bin/sh # filename killcpu.sh if [ $# -ne 1 ...

随机推荐

  1. Qt编写物联网管理平台50-超强跨平台

    一.前言 跨平台的需求,除了是用户的需求外,也是为了适应日益增长的国产操作系统的发展的需要,当前国产操作系统发展的如火如荼,100%都是围绕linux系统展开,说的好听点就是站在巨人的肩膀上开发,不好 ...

  2. Python项目开发案例集锦pdf

    下载链接:https://www.jb51.net/books/780548.html

  3. asp.net core 3.0 发布单文件,进程外托管,复制视图

    <PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework> <!--运行环境(发布单文件 ...

  4. 记录socket的使用

    今天记录一下socket的基本使用方法,直接上代码 initWebSocket() { //初始化weosocket const wsuri = "socket地址";//地址以w ...

  5. mac_使用Charles抓取Firefox 链接

    1. 首先在Charles 中导出证书,操作为:Help选项 --> SSL Proxying --> 选择第二项 Install Charles Root Certificate 2. ...

  6. 深入理解ASP.NET Core 管道的工作原理

    在 .NET Core 中,管道(Pipeline)是处理 HTTP 请求和响应的中间件组件的有序集合.每个中间件组件都可以对请求进行处理,并将其传递给下一个中间件组件,直到请求到达最终的处理程序.管 ...

  7. 实现windows下简单的自动化窗口管理

    转载或者引用本文内容请注明来源及原作者 一.问题描述 用户的应用场景非常简单:一个无主播的线上弹幕游戏,需要定时开启和关闭直播,直播平台是在Windows端的某播伴侣. 二.分析需求 首先需要定时任务 ...

  8. SpringBoot 项目模板-摆脱步步搭建

    本文以一个简单的电商订单系统为例,源代码请访问: git clone https://github.com/e-commerce-sample/order-backendgit checkout a4 ...

  9. weixueyuan-Nginx日志管理与监控8

    https://www.weixueyuan.net/nginx/log/ Nginx访问日志配置 Nginx 的访问日志主要记录用户客户端的请求信息(见下表).用户的每次请求都会记录在访问日志中,a ...

  10. bug的合规描述

    bug的合格描述:   发现问题的版本bug的合格描述: 开发人员需要知道出现问题的版本,才能够获取对应版本的代码来重现故障问题出现的环境 环境分为硬件环境和软件环境,详细的环境描述有利于故障的重现( ...