100ms的SQL把服务器搞崩溃了

100ms的SQL把服务器搞崩溃了,第1张

一个项目上线了两个月,除了一些反馈的优化和小Bug之外,项目一切顺利;前期是属于推广阶段,可能使用人员没那么多,当然对于项目部署肯定提前想到并发量了,所以早就把集群安排上,而且还在测试环境搞了一下压测,绝对是没得问题的;但是,就在两个月后的一天,系统突然跑的比乌龟还慢,投诉开始就陆续反馈过来了。

经过排查,原来是频繁执行一条耗时100ms的SQL导致,100ms感觉不长,但就是把系统搞崩了,具体细节如下。

项目采用ABP进行开发,集成统一的认证中心(IDS4),部分数据对接第三方系统,拆分后的这个项目架构相对简单。

考虑并发量不高,就算是高峰期也不会超过1000,于是就搞了个单台的数据库服务器(MySQL),测试环境中经过压测,完全能抗住。

上线时,由于线上资源的关系,DB服务器的配置没有按测试环境的标准来分配,相关人员想着后续看情况进行补配。上线推的比较紧,简单评估了配置风险,初步判断没啥大问题,于是就推上线了。

相关技术栈:ABP、IdentityServer4、Autofac、AutoMapper、QuartzNET、EF Core、Redis、MySQL等,这都不重要,重要的是100ms的SQL把系统搞崩了。

由于系统相对不大,并没有把分布式日志、调度监控,性能监控集成上去。

上线期间,前期处于使用推广阶段,一切正常。两个月后的一天,系统处于使用高峰时段,突然陆续收到反馈:系统有点卡!!!于是赶紧进行排查。

由于系统已经是集群部署的,慢这个问题首先怀疑是数据库服务器,于是让DBA的同事排查了一下,没有锁,只是有大量事务等待提交(waiting for handler commit),通过如下命令可查的:

看到都是插入审计日志记录导致,一看日志记录频率,差不多一秒500条记录。DBA同事说可能是记录插入频繁导致,此时CPU已经爆到100%了,为了快速解决问题,于是就赶紧关掉了一些不必要的日志记录。

这么一改,稍微降了一点,没有事务提交的记录,系统勉强可以撑着用,但是CPU还是在85%~97%波动;

看到这种情况,当然还是不放心,继续排查。 中间有对服务器的配置产生过怀疑,但非常肯定的是这不是主要原因,于是和DBA的同事继续排查。

系统虽然可以正常使用,但时不时的也看看监控屏,CPU一直处于高水位状态,还是有点慌的,因为一有问题,信息和电话都要爆。

突然DBA同事发现有一个单表查询的SQL执行比较频繁,于是单独拿出来试了一下,查询时间150ms左右,这个表的数据量不大,8万左右,但没有加任何索引,因为想着数据量不大,查询时长还可接受,所以当时就没有加相关索引。

定位到这条SQL后,想到的第一步就是增加索引,在测试环境上试了一把,执行效率直接飞速提高到1ms;效果如下:

所以和DBA同事达成一致意见,在生成环境上增加复合索引( 创建索引一定要注意字段顺序 ),在中午时候,系统使用频率不太高,于是就在生成上快速加了索引,我去,CPU一下降到了20%以内,意不意外;就算在使用高峰期,也没超过20%,通过zabbix工具监控看到CPU的效果:

问题算是解决了,总算松了一口气。

这里有个问题: CPU都爆了为什么没有报警提醒,这块DBA同事正在排查相关配置。这里发现CPU爆了,还是无意的远程到服务器,发现很卡,一看CPU才知道爆了。

系统虽小,问题不大,但其实暴露的问题还是挺多。

这次线上小事故暂时分享到这,因为项目不大,所以没有做那么多监控,但以下建议,小伙伴可以参考一下:

文章来自>在计算机网络日益普及的今天,计算机安全不但要求防治计算机病毒,而且要提高系统抵抗黑客非法入侵的能力,还要提高对远程数据传输的保密性,避免在传输途中遭受非法窃取。下面壹基比小喻来给你们讲讲服务器托管站点崩溃的几大原因。
第一,内存泄漏
C/C++程序还可能产生另一个指针问题:丢失对已分配内存的引用。当内存是在子程序中被分 配时,通常会出现这种问题,其结果是程序从子程序中返回时不会释放内存。如此一来,对已分配的内存的引用就会丢失,只要 *** 作系统还在运行中,则进程就会一 直使用该内存。这样的结果是,曾占用更多的内存的程序会降低系统性能,直到机器完全停止工作,才会完全清空内存。
第二,C指针错误
用C或C++编写的程序,如Web服务器API模块,有可能导致系统的崩溃,因为只要间接引 用指针(即,访问指向的内存)中出现一个错误,就会导致 *** 作系统终止所有程序。另外,使用了糟糕的C指针的Java模拟量(analog)将访问一个空的 对象引用。Java中的空引用通常不会导致立刻退出JVM,但是前提是程序员能够使用异常处理方法恰当地处理错误。在这方面,Java无需过多的关注,但 使用Java对可靠性进行额外的度量则会对性能产生一些负面影响。
第三,数据库中的临时表不够用
许多数据库的临时表(cursor)数目都是固定的,临时表即保留查询结果的内存区域。在临时表中的数据都被读取后,临时表便会被释放,但大量同时进行的查询可能耗尽数目固定的所有临时表。这时,其他的查询就需要列队等候,直到有临时表被释放时才能再继续运行。
第四,线程死锁
由多线程带来的性能改善是以可靠性为代价的,主要是因为这样有可能产生线程死锁。线程死锁 时,第一个线程等待第二个线程释放资源,而同时第二个线程又在等待第一个线程释放资源。我们来想像这样一种情形:在人行道上两个人迎面相遇,为了给对方让 道,两人同时向一侧迈出一步,双方无法通过,又同时向另一侧迈出一步,这样还是无法通过。双方都以同样的迈步方式堵住了对方的去路。假设这种情况一直持续 下去,这样就不难理解为何会发生死锁现象了。
第五,磁盘已满
导致系统无法正常运行的最可能的原因是磁盘已满。一个好的网络管理员会密切关注磁盘的使用情况,隔一定的时间,就需要将磁盘上的一些负载转存到备份存储介质中(例如磁带)。
日志文件会很快用光所有的磁盘空间。Web服务器的日志文件、SQLNet的日志文件、 JDBC日志文件,以及应用程序服务器日志文件均与内存泄漏有同等的危害。可以采取措施将日志文件保存在与 *** 作系统不同的文件系统中。日志文件系统空间已 满时Web服务器也会被挂起,但机器自身被挂起的几率已大大减低。
第六,服务器超载
Netscape Web服务器的每个连接都使用一个线程。Netscape Enterprise Web服务器会在线程用完后挂起,而不为已存在的连接提供任何服务。如果有一种负载分布机制可以检测到服务器没有响应,则该服务器上的负载就可以分布到其 它的Web服务器上,这可能会致使这些服务器一个接一个地用光所有的线程。这样一来,整个服务器组都会被挂起。 *** 作系统级别可能还在不断地接收新的连接, 而应用程序(Web服务器)却无法为这些连接提供服务。用户可以在浏览器状态行上看到connected(已连接)的提示消息,但这以后什么也不会发生。
总之,还有许多因素也极有可能导致服务器租用或服务器托管站点无法工作。有许多种原因可能导致Web站点无法正常工作,这使得系统地检查所有问题变得很困难。

数据中心发生的爆炸事件,让谷歌服务器的正常运行也受到了巨大影响。部分西方国家表示不光是搜索引擎出现问题,谷歌的地图、邮箱、都没有办法正常显示。但谷歌发言人在爆炸事件过后却表示,此次谷歌服务器出现问题与爆炸事件没有任何关系。这次故障是因为软件处于升级状态的原因,该公司认为现在最重要的是三位技术人员的健康。因为技术人员受了很严重的伤,该公司也会与当地负责部门共同查询此事的真正原因。

谷歌目前在全国已经拥有二十多个数据中心,可见其影响力之大。这次事故发生之后,也影响了亚洲地区的服务器。随着大数据时代的来临,数据中心成了时代发展的关键基础,中国的互联网公司也开始在中国的各地进行数据布局。在有关部门的指引下,让更多人明白了数据时代才是未来发展的关键。

目前中国有关于电子信息制造业也日益增多,工业互联网的应用越来越广泛。各个购物平台的年交易额也达到了万亿元,由此可见,数据中心已经走进了人们的生活。人们通过数据中心能够实现网上购物、网上缴费等活动,大大的增加了生活的便捷。中国的数字化企业正在大步向前,国家也因为互联网贸易的存在有了更高一步的发展。

所以说数据是这个时代最重要的东西,刷脸支付、指纹录入、网上支付等这些都是数据时代下产物。不仅推动着社会经济的发展,而且也帮着人们走向更加便利的生活。对于谷歌中心此次服务器的故障问题,无论是因为爆炸引起的,还是因为软件问题都不是最重要的。重要的是大家应该知道大数据时代已经来临,想要成为更加强大的国家,必须拥有更加强劲的技术能力。大家也相信,中国的互联网大户企业一定能脱颖而出。

最让我印象深刻的就是17年鹿晗关晓彤公布恋情和18年赵丽颖冯绍峰官宣结婚的消息吧!真的是微博都搞瘫痪了,刷什么都刷不出来,可见明星的恋情真的很受关注啊!

鹿晗在最火的时候公布与关晓彤恋情,不仅让很多人脱粉[笑哭],估计对关晓彤也造成了不小的舆论影响。但也是蛮佩服他的,给自己女友一个光明正大的身份,哪怕自己事业会受影响,现在只要有鹿晗关晓彤的身影就会上热搜,三年了被传分手,结婚数不胜数,目前看来两个人应该还算稳定,互相庆生,出去约会……估计下一个热搜瘫痪会不会是鹿晗关晓彤官宣结婚啊[捂脸]

赵丽颖和冯绍峰官宣结婚,“官宣体”也广泛被网友使用,赵丽颖在 娱乐 圈的势力感觉太强大了,电视剧部部火爆,人也长得甜美可爱,而冯绍峰的恋爱史很多人都有所耳闻,怕颖宝受欺负,刚开始也是很不被看好的,很多人都去冯绍峰微博下留言表示如果感欺负颖宝,亿亿万万的萤火虫是不会放过你的[大笑]今年赵丽颖也顺利诞下了小少爷,从冯绍峰在《奇遇人生》中谈起妻子赵丽颖和儿子想想时满是喜爱和宠溺,看来颖宝的婚后生活还是不错的!如果冯绍峰敢出轨,感觉他会被全网极力讨伐[大笑]

我印象最深的是王宝强离婚的,把奥运会风头都抢了[捂脸][捂脸][捂脸][捂脸][捂脸]

微博已经成为了很多人获取各种新闻信息的重要来源渠道,我们在微博上吃了数不尽的各种口味瓜,也常与朋友们共享吃瓜。
但是 娱乐 圈有时候一个大事件就能让服务器瘫痪。
1、鹿晗、关晓彤恋情
鹿晗宣布恋情后新浪微博就直接崩了,而且还是崩很久!据有网友描述,那天周围的女生宿舍都在哭…确实让人印象深刻,微博根本刷不出来,隔壁寝室还一片哀嚎。鹿晗脱粉无数!
2、赵丽颖、冯绍峰官宣
鹿晗那次之后据说系统弄得更强大了,有扩容,然而赵丽颖官宣结婚还是崩了……还是崩了好久,是真的一点也刷不进去,当时吃瓜的心好焦急。
3、林志玲宣布结婚

继赵丽颖之后,说微博一定要扩容,就算 娱乐 圈同时爆出8个明星出轨,也不会瘫痪。可是志玲姐姐宣布结婚之后,微博服务器又一次瘫痪了。在外度假的新浪工作人员,也开始了自己的工作之旅。
4、王宝强离婚事件

除了服务器瘫痪,这件事的热度也是持续了好久,因为不光是年轻人,连大爷大妈也想知道这件事的始末。
5、乔任梁自杀

当年乔任梁自杀事件也让微博瘫痪了,因为大家更多的是不相信,事业最好的时候,在大家面前永远是笑容,很阳光的男孩。这个消息出来简直就像炸d一样,让微博服务器直接炸了。
娱乐 圈还有很多令服务器崩溃的事情,比如文章姚笛出轨,范冰冰李晨的“我们”,宋慧乔宋仲基离婚,李小璐夜宿门等等。

千玺成年礼当晚,大量粉丝回归微博发祝福,微博研发总监凌晨发博在线震惊,是关于易烊千玺的“百鸟归巢送祝福,过个生日都能引围观,只有千玺了

娱乐 圈每天都有事情发生,粉丝的嗅觉是很灵敏的,只要有一点动静都会在第一时间知道,有些事却是能导致服务器瘫痪。印象较为深刻的是鹿晗关晓彤公布恋情,鹿晗毕竟是流量小生,粉丝基础自然不在话下。平时鹿晗发条微博,粉丝都要激动很久,鹿晗的微博还破了吉尼斯纪录,可见他的粉丝是有多强大。更何况是公布恋情,粉丝们看到自己的“男朋友”有了女友,立刻表示接收不了。粉丝的力量是很强大的,消息一公布,微博服务器就崩溃了,不知道有多少人哭晕在厕所。
2017年国庆节,正在结婚的微博程序员丁振凯不得不紧急救场,就是因为当天顶级流量小生鹿晗公开了和女友关晓彤恋情。
具体情况是太多人搜索这个 娱乐 圈大事件,微博服务器“炸了”导致无论手机端还是电脑端都出现卡顿或无法刷新现象。

更惨的是这个程序员回回都能赶上爆款事件,2019年正在日本休假的小丁,白天宋仲基宋慧乔官宣离婚登顶多国热搜,晚上范冰冰李晨官宣分手,为了不让服务器“炸了”的现象 历史 重演,悲催的他全天都在扩容。

不难发现一线艺人的婚恋很容易爆热搜,因为国民度高带来的强大搜索,比如赵丽颖冯绍峰结婚、杨幂魏大勋恋情、阿娇离婚等。

另外明星艺人的负面新闻也容易“炸服务器”,比如李小璐PGone事件;周扬青锤罗志祥;翟天临学位造假等。

再就是 社会 热点人物其实更容易把服务器弄“炸”,因为毕竟明星的受众多来源于粉丝和小部分平常关注 娱乐 八卦的人。

而 社会 人物或事件的关注度更高,比如近期的赌王何鸿燊去世,“炸”服务器的时间更快更久。

你还知道哪些让服务器“炸”了的时间么?欢迎在评论区交流
鹿晗公布恋情的时候是最火的时候,那几年他一直都是顶流,一起回国的几位成员,没有一个人的人气能够和他匹敌,当时他发微博公布恋情的时候,服务器一下就崩了,因为在这之前大家都没有传出任何关于他恋爱的消息,这个新闻来的太突然了。
大家第一反应是鹿晗被盗号了或者是宣传新作品,不过后来发现关晓彤进行回应之后,才慢慢认识到事情是真的。
当时有很多粉丝接受不了两个人的恋情,写了洋洋洒洒的长篇大论指责鹿晗是吃女友饭不应该谈恋爱,随即宣布脱粉,当时大多数人都不看好这段恋情,甚至有很多粉丝改名为关晓彤和鹿晗什么时候分手。
当时很多人都认为这两个人只是随便谈谈恋爱,谈不到几个月就会分手,却不曾想这两个人从2017年公布恋情到现在,都快3年了,两个人虽然没有经常合体秀恩爱,但是两个人在背地里暗戳戳的秀了不少恩爱,感情一直很稳定。
当年鹿晗因为颜值很高,被调侃长的比女孩子漂亮,经常被人拿来开性别的玩笑,但是从鹿晗公布恋情 的做法来看,能够在最顶峰的时候承认自己的恋情,这绝对是非常爷们的表现,现在当红的流量明星,没有几个能够有他的担当和勇气,祝福这一对能够走得更远。

全网瘫……

现在检验一个明星红不红的标准不再是微博有几千万粉丝,而是能不能让服务器陷入瘫痪。

微博粉丝数可以买,可以作假,但瞬间流量的涌入使服务器瘫痪这得多少人在同一时间同时 *** 作才能办到呀!所以这个几乎是不可能作假的。

周杰伦新歌《说好不哭》上线,QQ音乐服务器瘫痪

9月16日晚上11:00,周杰伦的新单曲《说好不哭》在各大音乐平台上线,这仍旧是一首情歌,歌曲诉说了一段凄美绝伦的爱情故事,感动了不少人。上线不久,大量的粉丝一拥而上,挤爆了QQ音乐的服务器,使之瘫痪。

周杰伦是一代人的偶像,周杰伦的歌曲陪伴了一代人的成长。

80后听着他的《龙卷风》、《东风破》、《双节棍》长大,90后听着他的《听妈妈的话》、《青花瓷》、《牛仔很忙》长大,00后听着他的《等你下课》、《不爱我就拉倒》长大,现在,10后可以听他着的新歌《说好不哭》长大。

总之,不管你在哪个年龄段,在周杰伦的作品中,总能找到一首适合你听的歌。

赵丽颖、冯绍峰公布婚讯,新浪微博服务器瘫痪

时间追溯到2018年10月16日,这一天上午赵丽颖和冯绍峰公布婚讯,打了大家和新浪微博服务器一个措手不及,由于一时间访问量过大,服务器瘫痪了。

赵丽颖非科班出身,却主演了《花千骨》、《楚乔传》、《青云志》等多部叫好又叫座的电视剧,演技得到了大家的认可,获得了“收视女王”的美誉。

反观冯绍峰,能拿得出手的影视作品很少,在名气上与赵丽颖差一大截,两人的结合给了大家一个很大的惊吓。

结婚照一出,女才男貌,女强男弱,阴阳互补,用中国传统文化中的中庸平衡之道来解读,这样看来是两人是天作之合、神仙美眷。

鹿晗、关晓彤公布恋情,新浪微博服务器瘫痪

时间再往回倒,来到2017年10月8日,这一天鹿晗认爱关晓彤。

那时的鹿晗、关晓彤都是当红流量明星的顶级代表,公布恋情又打了观众一个措手不及,微博服务器又被挤瘫痪了。

之后关晓彤的每一年生日,鹿晗都拿着手机在0点准时打卡,有这么称职的男朋友真是太幸福了。

时间再往回倒,让微博服务器瘫痪的事件还有两起:李晨认爱范爷,王宝强与马大姐分道扬镳。

服务器瘫了还可以修好,恋爱关系瘫了、婚姻关系瘫了可就无法修复了。

李晨与范爷分手了,王宝强与马大姐离婚了,在 娱乐 圈,难道就没有坚不可摧的爱情与婚姻吗?

希望鹿晗、关晓彤能修成正果,走入婚姻的殿堂。

希望赵丽颖与冯绍峰,周杰伦与昆凌的婚姻关系牢不可破,白头偕老。

娱乐 圈的事情往往是人们茶余饭后所津津乐道的,也是吃瓜群众所消遣时间的方式, 娱乐 圈其中有些大事却把服务器弄瘫痪了。
双宋结婚
最初两人的恋情是由于一起拍戏产生得,一个吻戏的片段NG了上百次,或许是导演特意安排的。
他们结婚的时候可是震惊了一众中外粉丝,韩国接近半个 娱乐 圈明星都出席了这场婚礼,获得了巨大关注,国内微博、朋友圈等都在齐刷着双宋结婚,男神和女神都成家了。
赵丽颖和冯绍峰宣布结婚
很多人都喜欢赵丽颖,亲切得称她为"颖宝”,也希望她能找到一个好归宿。让粉丝喜出望外的是晒出与冯绍峰的结婚证件照,正式官宣结婚!
这真是太意外了,省略了恋情,直接公布结婚,那时的粉丝们都纷纷献上祝福、留言,而没多久微博就出现了全面崩溃等问题,直接把服务器弄瘫痪了
鹿晗关晓彤公开恋情
记着当初这个把微博服务器搞垮了很久,就是鹿晗公布了恋情,而对象竟然是关晓彤!那时有不少粉丝就直接脱粉了,毕竟鹿晗的好多粉丝都是女友粉。作为一个流量小生主动恋情,就这一个方面来说确实有担当
白百何事件
虽然说 娱乐 圈大多数都是在演戏,不过白百何出轨事件仍然很震惊,这个事件狂刷着朋友圈,对其老公的伤害也是相当之大
她的形象瞬间就彻底崩塌,引起很多网友的不满和谴责,当初的《捉妖记2》差点都无法上映
马蓉事件
这件事直到现在,都有人在讨论着,王宝强全凭自己实力从草根逆袭,没想到的是妻子马蓉竟然出轨,而且还是出轨经纪人宋喆,当时这个消息迅速传遍全网
更惨的是只有女儿是他的,他的儿子竟然不是亲生的,也是悲剧。马蓉也是被从头骂到尾,同时也成了出轨的代名词

我玩lol,选英雄的时候总是发生未知错误,然后就选不了,为什么?

这是你家网速的问题了,看看自己的路由器有没有被侵犯,或者是你家用的是网通的网线,而你却在电信区,用的电信的网线,却在网通区

为什么英雄联盟总是发生未知错误

1 IE设置问题,lol pvp服务器登陆 使用的协议与IE有关,因此可以工具 选项 高级 重置浏览器设置
2 主板电池没电导致系统时间错误 ,请手工矫正年份
3 网络状况不好,可以ping 地址 -t 来检测是否有丢包现象 如果5-6个包 就丢一个 那么上述情况正常,请改善网络状况
4 请不要使用 赛门铁克 趋势等 安全级别非常高的 防火墙软件,打游戏时请关闭,这种防火墙会对任何数据请求进行扫描,造成网络延迟的假象,影响访问速度
这上边可以试试 我也出现过 一般我都是重新装系统 你应该是下什么不干净的文件和片子了 导致lol中有什么清楚不了类似于病毒的插件了 所以 我都是重做系统

为什么我玩英雄联盟,查看个人信息的时候,出现未知错误,发生未知错误?

很正常的,单反玩过英雄联盟的,都会出现这样的情况,特别是用lol盒子,有的时候你打一把,竟然没有丝毫战绩! 可能是网速过慢,可能是游戏插件的问题,但是也可能是软件出错! 查看个人信息出现未知错误,估计就是你的网速慢;没事的!希望能够帮助你、!

为什么yy总是注册不了,说是发生未知错误。

我给你一个吧,djalian46,,, 密码lian369,你自己改改就行了,这是个四无号,速度啊

lol为什么老是发生未知错误

之前用TGP老是出现这个,先登录另外大区再换回来登录就好了

instagram为什么注册的时候一直是发生未知错误?

注册的方法不对,可以按照下面方法进行注册。
1根据自己的手机下载Instagram,Instagram安卓版下载,iPhone用户请到iTunes下载。下载完成后安装。
2打开Instagram,点击“使用电子邮件注册”。如果有Facebook账号,也可以使用Facebook账号注册。
3在新建账户界面,输入的电子邮件、用户名(不支持中文)和密码。用户名输入时会实时检测,如果已经有人注册了屏幕上方会提示“不可用”,左边的图标也会显示为红色。
4用户名和密码验证通过后,图标会显示绿色,此时就可以点击右上角的√继续下一步了。个人资料页是可以不输入的。
5在d出的确认窗口中确认你的注册邮件是否正确,然后点击“是”按钮即可完成Instagram账号的注册。提示:如果长时间停留在注册中,请换个时间再试。
6接下来会提示搜索好友,点击下方的“暂不”跳过就OK了。

为什么注册不了yy,总是显示“发生未知错误”?

网速或者浏览器问题,可以考虑换一个浏览器试试

为什么我ipad在恢复ios的时候总是显示发生未知错误3194

换根数据线试一试 查看更多答案>>

为什么我的电脑QQ老是发生未知错误,然后就掉线了,玩梦幻西游的时候又老是发生网络错误,怎么回事啊

可能是你的IP被锁定了,梦幻有时候确实会网络错误,但是不 的电脑什么事,是网易的网络问题。建议你把IP调制能自动获得IP地址的哪种

英雄联盟发生未知错误

你是艾欧尼亚的吧,服务器爆炸了。。人太多服务器崩溃就会这样


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13016366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存