记一次性能优化,单台4核8G机器支撑5万QPS,硬核!

本文详细记录了一次性能优化过程,通过调整系统参数和优化数据库访问,将单台4核8G服务器的QPS从3万提升至5万,同时保持了较低的错误率和合理的资源占用。优化策略包括使用消息队列缓解数据库压力,增加缓存,调整TCP连接参数等。
摘要由CSDN通过智能技术生成

前言

这篇文章的主题是记录一次性能优化,在优化的过程中遇到的问题,以及如何去解决的。为大家提供一个优化的思路,首先要声明的一点是,我的方式不是唯一的,大家在性能优化之路上遇到的问题都绝对不止一个解决方案。

如何优化

首先大家要明确的一点是,脱离需求谈优化都是耍流氓,所以有谁跟你说在xx机器上实现了百万并发,基本上可以认为是不懂装懂了,单纯的并发数完全是无意义的。

其次,我们优化之前必须要有一个目标,需要优化到什么程度,没有明确目标的优化是不可控的。再然后,我们必须明确的找出性能瓶颈在哪里,而不能漫无目的的一通乱搞。

需求描述

这个项目是我在上家公司负责一个单独的模块,本来是集成在主站代码中的,后来因为并发太大,为了防止出现问题后拖累主站服务,所有由我一个人负责拆分出来。

对这个模块的拆分要求是,压力测试QPS不能低于3万,数据库负责不能超过50%,服务器负载不能超过70%, 单次请求时长不能超过70ms,错误率不能超过5%。

环境的配置如下:

  • 服务器:4核8G内存,centos7系统,ssd硬盘

  • 数据库:Mysql5.7,最大连接数800

  • 缓存: redis, 1G容量。
    以上环境都是购买自腾讯云的服务。

  • 压测工具:locust,使用腾讯的弹性伸缩实现分布式的压测。
    需求描述如下:

用户进入首页,从数据库中查询是否

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Monster_起飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值