系统优化受到压力出现瓶颈怎么解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统优化受到压力出现瓶颈怎么解决?相关的知识,希望对你有一定的参考价值。

1. 你任务目前的系统业务量增加10倍  可能出现瓶颈的业务节点时什么?(根据自己的业务思考,10倍压力不够的,那就100倍吧,100倍在不需要的话辞职吧)

对客户来说,直观感觉应该在如下三方面感觉不好
登录页面缓慢
查询访问缓慢
增删改缓慢

一:流量,如果是10倍或者是100倍,我们最大的压力可能是流量,对于整站https,很多东西不能上cdn,和云存储,静态的东西相对比较少,一些图片放在云上,七牛或者又拍云。但是我们这个行业,如果业务增加到100倍,估计就是行业的巨头了,到时候买流量也没有什么压力;

二:中间件压力,对宇前端可以用nginx和ha来负载,但是反向代理的中间件比如tomcat,默认并发是150.肯定来不及处理前端的数据,然后尽量做到异步来处理信息,我们是用的阿里开源的rockermq集群和zookeeper,这点和电商是有区别的

三:数据库的压力,相对于电商的数据,我们要的相当于安全。数据库的压力对于对与普通电商来比相对较小;但是也有是,我们变态的地方是日志也记录在DB中

四:服务器的压力,堆一大堆的服务器是必须的,由于行业原因,我们是不上公有云的,所以后期肯定是docker化;

五:构建,发布,回滚。现在我们已经是分布式的微服务,100多个应用,单单用jenkins是有压力的。

六:安全:网络,数据库,灾备的安全都要考虑进去



2. 你想用什么样的办法 优化你的系统

扩容方式:
             采购硬件进行扩容,包含新购主机,更换机械硬盘到SSD盘,热点数据存放到SSD盘,增加读写响应能力
优化方式:
             优化操作系统参数(读写参数)、优化架构(读写分离)
             调整数据库参数,清理历史数据
             根据业务逻辑调整SQL,优化索引,信息收集,数据整合

一:流量:不涉及money和隐私的全不用云或者cdn。买流量;

二:尽量异步和对应用的服务器来提高中间件的处理速度

三:数据库集群,redis,对于业务的需求使用不同类型的数据库,当然数据库优化是最基础的

四:服务器数量的增多,肯定是要docler化。批量管理工具ansible+salt联合使用,估计监控zabbix也要重新定制和二次开发

五:构建,发布,回滚必须有个二次开发的平台。多种自动化的工具配合使用

六:对于代码级别的要找专业的安全公司去审核。然后机房必须做到异地灾备;


                         
3. 增加10倍的压力后。你想怎么管理你的服务器

(1)系统整体迁移到阿里云
(2)改进硬件环境,向老板申请出资购买更昂贵的服务器
(3)提高CPU并发计算能力
(4)改进服务器并发策略

(5)用saltstack ansible puppet集中管理啊

 (6)zabbix监控主机的CPU、内存等信息或者通过nagios进行监控
 (7)文件系统级别自动进行空间告警和清理。
 (8)数据库级别监控数据库的服务,数据库正常与否

(9)二次开发造个大轮子,cmbd。那个时候,钱不会少。也会好玩很多。




本文出自 “YHT的运维笔记” 博客,请务必保留此出处http://yht1990.blog.51cto.com/9014030/1916700

以上是关于系统优化受到压力出现瓶颈怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章

大并发内核优化参数

性能测试,负载测试,压力测试一些区别和应用

Java进阶必须掌握内容:系统架构性能优化思路

JVM 性能调优实战之:一次系统性能瓶颈的寻找过程

优化报表系统结构之报表server计算

04 web前端性能优化