服务器压力过大触发保护机制 (服务器压力过大是什么意思)

服务器负载过高还能进嘛,服务器压力过大是什么意思

【今日话题】

话说压力上来之后会做什么啊?切流量?加服务器?非核心业务降级?

看是什么压力啊, 正常访问还是攻击啊,正常的业务访问,还是秒杀活动带来的瞬间压力,还是攻击的压力,攻击的一般怎么做,攻击看cc 还是dd啊 - vk

这个分为两大类。一类是正常流量忽然之间上来了。一类是攻击来了。 - Dd

能cc也能dd cc打不死就dd,不是攻击的话 短时间保业务就是降级 - 王*光春**

先确认是攻击性还是正常访问量。然后针对解决。 - Mutitty

加服务器什么的都是后话,我这量起来扛不住 先把爬虫类干掉,大促什么的没预案 那是作死 - 王*光春**

先保证核心服务不要挂,但是如何保证核心服务不要挂是个问题。预案是B方案。 - Dd

如果是网络正常访问量大了,加大CDN带宽。如果是硬件吃紧,考虑增加硬件配置。如果是代码层漏洞,及时分析找出优化方案。 - Mutitty

解决问题就是找瓶颈在哪里,实际上没什么好讨论的 - 王*光春**

A方案流量评估! - Dd

加硬件也得有准备啊,另外可能就是故障引起的,这得找故障点 看有没有应急方案 - 王*光春**

昨晚第一次使用青云的服务器, 活动瞬时流量很高, 超过了预设的流量峰值, 页面无法打开, 临时调整流量峰值 。。。 - Meow

云主机加硬件很快。实体机做促销就先有个压力测试准备。云主机加服务器也快,加网络,内存,CPU都快。倒是很方便。 - Mutitty

就是用云也得提前预备,断几分钟也付不起责任 - 王*光春**

所以上线前要有预估,压力测试的。 - Mutitty

都得提前申请,不过都提前预备了 为什么不提前加上 - 王*光春**

没预估到有流量超峰值的情况,只预告了请求量 - Meow

做CDN,有个保底带宽,上不封顶。 - Mutitty

cdn 他们N个服务器节点,本来就是共享型的 ,你和其他客户分担。- vk

cdn能解决的都是小问题 - 王*光春**

哦, 下次得做cdn了, 静态文件的流量太大 - Meow

cdn被攻击才麻烦,检查哪里的接点坏,又要客户ping之类的,啰嗦 - vk

你们没碰到被cdn坑吗 - 王*光春**

压力分两种有效压力和无效压力,无效压力包括攻击和盗链,一般用白名单或者流量清洗的手段解决。有效压力主要分从内而来的压力和从外而来的压力,从外部来就加CDN加cache,从内部来就加反向代理和内网DNS拦截。大概思路都是这样吧 - 小铭

cdn的后期维护响应太慢 ,等cdn解决了, 业务时间段都过去了 - Meow

cdn比较多坑,我遇到是销情况,要看光哥遇到什么问题 - vk

一般上线前怎样预估流量 - Armando

cdn突然操作失误 把缓存给你删了,全部回源,算法有问题 给你缓存的文件不完整,cdn个别节点出故障都是小事 反正他们不会承认 你也不知道怎么监控 - 王*光春**

但每次出现504的时候,总是赖我们源服务器 - vk

----------------------

压力上来了,开新服 (做游戏,逃~) - 能加机器就先加机器,业务稳定了再优化

能加机器就先加机器,业务稳定了再优化 - 上吊de鱼

如果是突发事件,肯定是先加机器;

如果是日常运营中发现服务器压力增大,

那就先做检查,什么压力?来自于什么?是由业务导致还是程序导致?可以怎么优化? - Paris

加机器不是你想加就能加,就有加的 - tiyee

阿里云,相加就加啊,必须要有钱。。 - 王伟

哪有这么容易 - tiyee

恩,要时间。 - 王伟

某家W开头的公司,都这么多年了,还是一碰到突发流量保障就各种故障,可见还是不那么容易处理的,不过看趋势,应该是云服务配合docker,实行伸缩架构,自动扩容减容,但是,各家公司在分享的时候都在吹这个,但也没见哪家做成了 - tiyee

非核心业务降级方案肯定要有,而且效果挺好,也方便,以前有个实时个性化推荐的接口,服务器扛不住了大部分用户取的会是cdn存的一堆json数据。 - 肖龙

对。一般还是得根据具体业务情况选择方案。压力出现在代码逻辑层可以考虑加机器。出现在db层最好还是考虑业务降级做缓存或者静态化。 - 荣亮

-------------

首先得找到压力出在哪 - coseylee

通过监控和日志? - 鲁国行人甲

看带宽的流量峰值,及服务器的性能状况,再做处理。 - bewyn

负载均衡,这应该是之前做的 - 洋洋洋@卡车之家

先要分析大概有多少并发。 - bewyn

以前公司做活动 段时间内压力会递增 主要措施 加服务器 在f5上对配置低的服务器降权 代码层面非核心业务降权 活动过后 还要切回来 只是临时的方案 - xyym

压力大,一般是io问题吧。我们的项目一般是db io影响,db性能不够,导致php不释放。更多的请求进来,压力持续上升,最后崩了。 - 刘占涛@*今条头日**

崩一般就是db顶不住了,加机器 非核心关闭 常用方法 - wangjing

不知道电信行业月底开账的时候是怎么做的 那个时候大批量话单文件和消息要处理,我猜测也是通过加机器来缓冲的吧 - crazyddd

分批处理 - Jimmy

【其他问答】

你们怎么做电商类购物车到付款流程自动监控故障的? - 胡同里有猫

不监控 等用户报 爱买不买 - 王*光春**

自动化测试喽 - 我不叫大脸猫

损失的销售额都不算到你们头上是吧。。。 - 胡同里有猫

我会告诉你们我们是让7*24小时的客服定时去人肉测试并汇报么 - 我不叫大脸猫

你怎么知道损失 - 王*光春**

肉侦 - Armando

技术解决问题都是报上来后定点监控 - 王*光春**

问题是故障怎么发生的 - Armando

很多问题换环境就复现不了,保证多数用户不是保证个别用户 - 王*光春**

要么在错误页面来个人工客服? - Armando

爱买不买 具体问题具体对待,拍脑袋加监控不可取 - 王*光春**

我的目的是保证请求正常达到自己服务器上,自己服务器上的整个流程都能跑通的这种监控。 要兼顾到服务器外的网络也是不太现实。 - 胡同里有猫

你说的第一个就没法保证 - 王*光春**

监控加在哪儿?客户端上?服务器上? - 闪亮的日子

谁也做不到 - 王*光春**

第一个不是请求正常达到服务器上啊。。。。是假设请求已经正常达到服务器上 - 胡同里有猫

瞄爷说的自动测试其实跑不跑一样 一般系统哪抛错误了 定义好级别 直接通知责任人了 - 王*光春**

UUID.randomUUID() 现在生成 每次推荐的uuid是这个 有点长 有什么好的方法吗?

最好是考虑大小写字符+数字的

snowflake - 陈亦

嗯,类snowflake算法,但是有很多细节需要注意 - 廖强

自己写个随机就成,自己写个随机就成,好吧 没听过这个snowflake 去学习一下 - 苹果

《每秒处理10万订单乐视集团支付架构》 (链接见文末) ,分库分表信息放进去,如果分库变化了,这个order id岂不是无效了? - -陈亦

服务器负载过高还能进嘛,服务器压力过大是什么意思

1个是降低锁的粒度上,不能沿用10为machine id,最好拆成业务id+machine id,另外一个是,每次跨毫秒的时候,序列号都会归0,经常情况下,会导致最后一位经常为0,不具有取模随机性,分库分表的话,数据切分就没那么均匀 ,分库分表的规则不能随意乱变的,比如如果分了10个库,现在要分11个库了,处理就会比较麻烦 - 廖强

是的。但这篇文章说现在分8个库,但未来会支持更大的分库。那这样order id就失效了。会产生很大的问题 - 陈亦

一般是通过双写的冗余来做,最后再删除多余的数据,也可以做,就是麻烦点 - 廖强

不是麻烦的问题。是老的order id咋办?不仅是数据库保存的问题,而是有可能order id产生了外部引用,人力无法变更 - 陈亦

你order_id不会变啊 - 廖强

但order id记录了分库信息啊 - 陈亦

如果关注过redis的拆分的话,会有另一种方案,就是一致性hash。但是一致性hash在节点少的情况下,分布不均匀,所以会做pre-hash,制造出一批虚拟节点,然后虚拟节点跟物理节点在做映射。扩展的时候,只用把虚拟节点的数据同步到物理节点就可以了,能通过order_id查询就可以了,双写阶段有可能一个order数据存在2份,比如一个order_id为123,刚开始按照5取模,在第三个节点上;后来要改成11个节点的时候,在第二个节点上;这个时候改成11个节点并没有马上生效,还是按照原来进行的,新数据保证新老的规则都有,老数据做一次迁移,最后完成的时候,找一个时间节点,切到新规则上,观察一段时间没问题了,再考虑清理冗余的数据 - 廖强

这个我明白,就是order id已经对应不了分库信息了 - 陈亦

不能让这种情况存在啊 - 廖强

这个代价很大吧,也不知道何时数据迁移完了,因为这个迁移涉及到外部引用,是的,所以我觉得那篇文章有点问题 - 陈亦

外部引用没关系啊,你想象你的订单模块是一个解藕的模块或服务,对外部是透明的 - 廖强

一般来说,10个库升11个库等于没升,我们以前的做法很简单,直接升20个库, 按倍数升 - Paris

中间不存在停服 - 廖强

也就是说始终存在多种情况,系统会越来越不可控 - 陈亦

【语录】

针对 “一元抢购” 的看法:

这个典故让我想起了东德和西德合并后,审判射杀平民的士兵,士兵说以执行军令为由拒绝认罪,但是法庭裁定有罪,理由是你有执行军令的义务,但你完全可以“打不准”

对比技术就是你完全可以写出有bug或者有上限的“一元抢购” - 廖强

【分享链接】

我为什么又搞了一个Go社区 [ https://gocn.io/article/48 ] - Asta Xie

ZeroMQ及其模式 [ http://mp.weixin.qq.com/s?__biz=MzA3NDM0ODQwMw==&mid=2649827495&idx=1&sn=1016abef2a23ab43c6c6253228f7960c&chksm=8704aabbb07323adbfcfcd19b9f65527067f175220b8bf02d86012f96d08ff117255920a82e0&mpshare=1&scene=1&srcid=1014J3Vpk5ghnV7YKJOquB10#wechat_redirect ]

初识Luajit [ http://www.cppblog.com/pwq1989/archive/2013/11/28/204487.html ]

Luajit中的好轮子DynASM [ http://www.cppblog.com/pwq1989/archive/2013/11/30/204508.html ]

PHP浮点数的一个常见问题的解答 [ http://www.laruence.com/2013/03/26/2884.html ]

IOS里的那类无节操的广告 [ http://mp.weixin.qq.com/s?__biz=MzIwNjU0NjEyNA==&mid=2247483689&idx=1&sn=b8fc24ff0795546d2786a9a3a0475077&chksm=971eb48aa0693d9c5f47d817b14b6b797e58c1c9df78279d75f9d6efdb3c1f4adf2441091caf&scene=0#wechat_redirect ]

如何评价百度开源的深度学习框架 Paddle? [ http://www.zhihu.com/question/50185775/answer/119784535 ]

每秒处理10万订单乐视集团支付架构 [ http://mp.weixin.qq.com/s?__biz=MzIyNjE4NjI2Nw==&mid=2652556055&idx=1&sn=f1fa6551fde7da7c85ea0815883d5f64&scene=1&srcid=04305Pblzn5D5N3D1sMiofGZ#wechat_redirect ]

【其他】

以上内容来自微信公众号 “黑夜路人技术” 微信群,聊天记录,欢迎进群讨论

进群方式:关注微信公众账号“黑夜路人技术”公众号,回复“加群”