这里还是按照场景来吧,毕竟场景是最能体验实用性的。首先说下服务器配置以及环境
阿里云ECS云主机,8G内存,4核的CPU,20M带宽,20G系统盘+200G数据盘,CentOS6.564位,安装的一件集成lnmp环境
场景:微信发红包
这个场景是很常见的,一般客户会在整点的时候进行一次微信公众号的广告推送,这儿时候服务器的并发大概在3000到5000左右。说起来这其实并不算是高并发,但是服务器还是崩了,大概需要等待5分钟之后才能恢复正常。这有点不应该啊,分析原因。查看CPU的利用率并不高,内存使用也很正常,在阿里云控制面板里面查看网络出口流量满载,问题大概是清楚了,网络原因导致。
首先查看静态资源,发现图片大部分没有优化,于是脱下来进行无损压缩,大概省略了1M左右的大小,提交上去后依然崩溃,服务器频繁出现502。
再次检查页面的静态资源css和js,把常用的js库替换成CDN以减少请求数,提交后依然没有多少变化,502依旧。
于是查看nginx连接数,使用命令
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
结果显示
TIME_WAIT 3828SYN_SENT 1FIN_WAIT1 107FIN_WAIT2 27ESTABLISHED 661SYN_RECV 23CLOSING 15LAST_ACK 284
乖乖,TIME_WAITE很高,这里务必说下TIME_WAITE的含义:TIME_WAIT:另一边已初始化一个释放。这个是啥意思呢?意思就是服务器已经主动关闭了,在等待客户端给一个回应,如果客户端一直没有回应就会出现等待,这个值就会增加。很显然,这个时候我们需要减少TIME_WAIT的值。
这里只需要修改sysctl.conf的一些参数即可,编辑/etc/sysctl.conf文件,检查
是否是这样的设置,如果找不到对应的,在文件最后加上即可。保存后执行
/sbin/sysctl -p
配置即可生效。
20分钟后继续查看nginx连接数,结果
TIME_WAIT 87SYN_SENT 1FIN_WAIT1 60FIN_WAIT2 19ESTABLISHED 477SYN_RECV 12CLOSING 2LAST_ACK 100
恢复正常,网络带宽也降下来了。
但是好景不长,第二次整点开始抢红包的时候又出现了502。查看进程发现mysqld的CPU占用率很高,导致CPU满载,服务器崩溃。修改mysql配置文件,调整max_connection为30000。其他相关参数进行了调整优化,情况有所缓解,但是短短几分钟之内CPU又满载了。
诡异!于是查看mysql中的进程,发现频繁的sql查询,而所查询的几个表数据量均在10万左右,判断是因为没有设置索引导致。咨询后端开发,果然是只设置了主键。立刻修改,提交上去五分钟后CPU降下来,稳定在10%左右,也没有出现过502了。
以上是如何解决在服务器维护中处理高并发所导致的一些常见问题的详细内容。更多信息请关注PHP中文网其他相关文章!

Linux的基本结构包括内核、文件系统和Shell。1)内核管理硬件资源,使用uname-r查看版本。2)EXT4文件系统支持大文件和日志,使用mkfs.ext4创建。3)Shell如Bash提供命令行交互,使用ls-l列出文件。

Linux系统管理和维护的关键步骤包括:1)掌握基础知识,如文件系统结构和用户管理;2)进行系统监控与资源管理,使用top、htop等工具;3)利用系统日志进行故障排查,借助journalctl等工具;4)编写自动化脚本和任务调度,使用cron工具;5)实施安全管理与防护,通过iptables配置防火墙;6)进行性能优化与最佳实践,调整内核参数和养成良好习惯。

Linux维护模式通过在启动时添加init=/bin/bash或single参数进入。1.进入维护模式:编辑GRUB菜单,添加启动参数。2.重新挂载文件系统为读写模式:mount-oremount,rw/。3.修复文件系统:使用fsck命令,如fsck/dev/sda1。4.备份数据并谨慎操作,避免数据丢失。

本文探讨如何在Debian系统上提升Hadoop数据处理效率。优化策略涵盖硬件升级、操作系统参数调整、Hadoop配置修改以及高效算法和工具的运用。一、硬件资源强化确保所有节点硬件配置一致,尤其关注CPU、内存和网络设备性能。选择高性能硬件组件对于提升整体处理速度至关重要。二、操作系统调优文件描述符和网络连接数:修改/etc/security/limits.conf文件,增加系统允许同时打开的文件描述符和网络连接数上限。JVM参数调整:在hadoop-env.sh文件中调整

本指南将指导您学习如何在Debian系统中使用Syslog。Syslog是Linux系统中用于记录系统和应用程序日志消息的关键服务,它帮助管理员监控和分析系统活动,从而快速识别并解决问题。一、Syslog基础知识Syslog的核心功能包括:集中收集和管理日志消息;支持多种日志输出格式和目标位置(例如文件或网络);提供实时日志查看和过滤功能。二、安装和配置Syslog(使用Rsyslog)Debian系统默认使用Rsyslog。您可以通过以下命令安装:sudoaptupdatesud

选择适合Debian系统的Hadoop版本,需要综合考虑以下几个关键因素:一、稳定性与长期支持:对于追求稳定性和安全性的用户,建议选择Debian稳定版,例如Debian11(Bullseye)。该版本经过充分测试,拥有长达五年的支持周期,能够确保系统稳定运行。二、软件包更新速度:如果您需要使用最新的Hadoop功能和特性,则可以考虑Debian的不稳定版(Sid)。但需注意,不稳定版可能存在兼容性问题和稳定性风险。三、社区支持与资源:Debian拥有庞大的社区支持,可以提供丰富的文档和

本文介绍如何在Debian系统上使用TigerVNC共享文件。你需要先安装TigerVNC服务器,然后进行配置。一、安装TigerVNC服务器打开终端。更新软件包列表:sudoaptupdate安装TigerVNC服务器:sudoaptinstalltigervnc-standalone-servertigervnc-common二、配置TigerVNC服务器设置VNC服务器密码:vncpasswd启动VNC服务器:vncserver:1-localhostno

配置Debian邮件服务器的防火墙是确保服务器安全性的重要步骤。以下是几种常用的防火墙配置方法,包括iptables和firewalld的使用。使用iptables配置防火墙安装iptables(如果尚未安装):sudoapt-getupdatesudoapt-getinstalliptables查看当前iptables规则:sudoiptables-L配置


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境