最近语雀不是出了个号称 “载入史册” 的 P0 级事故嘛 —— 连续宕机 7 个多小时无法使用,作为一个大厂知名产品,这个修复速度属实让人无法理解。 故障公告原文:https://mp.weixin.qq.com/s/WFLLU8R4bmiqv6OGa-QMcw 也有同学看了的语雀故障公告文章,发现改进措施这一段中提到了 “可监控,可灰度,可回滚” 这 9 个字,我觉得这确实是全文的核心亮点了,把事故复盘总结地很精辟。 但是这 9 个字到底是什么意思呢?鱼皮给大家解读一下。 如何保证系统发布的稳定性? 首先,这几点都是企业正式线上项目需要重点关注的能力,所以大家在校自学时一般是很少能接触到的。 举个例子,我不需要每次打开服务器看日志或者用什么 jmap 命令分析 gc,而是直接通过一个面板整体查看系统的状态,甚至是自动提示问题和解决方案。
安装 LogAnalyzer LogAnalyzer 的下载地址可以参考 下载 ,安装过程可以参考 安装 ---- 下载 LogAnalyzer [root@h105 src]# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.6.tar.gz --2016-05-10 22:15:18-- http://download.adiscon.com/loganalyzer/loganalyzer-3.6.6.tar.gz Resolv
这台服务器用了好几年了,阿里云轻量2h2g(没错,就是这样)。先来给大家看看这次的服务器监控吧。在之前的几个小时,大家也可以看到负载基本满载,处理之后舒服了。 先来说说具体的事故发生:前景:最近个人在做一款AI应用,其中支付服务我用的node+express+mongodb实现,部署到了这台服务器上(穷鬼只有这一台),正式因为我这台机子比较小,所以我选择以一种新的方式来做 事故发生事情从8.5凌晨发生,当时醒来,服务器突然进不去了,但是服务器(阿里云)账号登录权限在同学那(我和同学之前就为了卡个学生优惠,我的号在大学之前就弄过了qwq),总不可能半夜把别人叫醒吧,中间好几次成功进去了 事故分析进入Shell直接top/ps一套,然后发现,怎么一大堆php进程占用很高。这个图是解决之后的了,当时看的时候整整一页都是php-fpm,既然要解决问题,那么肯定是要找问题的引发原因。 事故解决所以我就一刀切killall -9 php-fpm # 或者pkill php-fpm直接全部kill,然后手动重启php服务即可。
1、环境说明: (1)我的虚拟机是:VMware Workstation 12 Pro (2)Debian9系统下载 2、系统安装: 至于虚拟机如何配置,这里就不再赘述了 然后点击Continue继续进行安装 你可以在这里给你的服务器起一个名字,默认为debian。 然后选择Continue继续安装 配置你的服务器系统root密码,然后继续安装.使用按键Tab可以切换到其他按钮上去。 选择否,继续安装、 选择否,继续 这里是让你选择安装软件包,如果是服务器的话,就不用安装桌面,直接使用命令行就可以了。可以根据自己的需要进行安装。 然后继续 至此,整个Debian9的安装就完成了,点击Continue系统将会重启。现在系统安装完毕了,但是还不能够访问,将会在下一篇里面教你如何修改接口配置。
2 还原线程破坏单例的事故现场 为了解决饿汉式单例写法可能带来的内存浪费问题,于是出现了懒汉式单例的写法。懒汉式单例写法的特点是单例对象在被使用时才会初始化。 5 还原反射破坏单例的事故现场 我们来看一个事故现场。大家有没有发现,上面介绍的单例模式的构造方法除了加上private关键字,没有做任何处理。 7 还原反序列化破坏单例的事故现场 一个单例对象创建好后,有时候需要将对象序列化然后写入磁盘,当下次使用时再从磁盘中读取对象并进行反序列化,将其转化为内存对象。 @Override public ConcretePrototype clone() { return instance; } 9 容器式单例写法解决大规模生产单例的问题 虽然枚举式单例写法更加优雅 9 附彩蛋:ThreadLocal线程单例 最后赠送大家一个彩蛋,线程单例实现ThreadLocal。
2 还原线程破坏单例的事故现场 为了解决饿汉式单例写法可能带来的内存浪费问题,于是出现了懒汉式单例的写法。懒汉式单例写法的特点是单例对象在被使用时才会初始化。 5 还原反射破坏单例的事故现场 我们来看一个事故现场。大家有没有发现,上面介绍的单例模式的构造方法除了加上private关键字,没有做任何处理。 7 还原反序列化破坏单例的事故现场 一个单例对象创建好后,有时候需要将对象序列化然后写入磁盘,当下次使用时再从磁盘中读取对象并进行反序列化,将其转化为内存对象。 @Override public ConcretePrototype clone() { return instance; } 9 容器式单例写法解决大规模生产单例的问题 虽然枚举式单例写法更加优雅 9 附彩蛋:ThreadLocal线程单例 最后赠送大家一个彩蛋,线程单例实现ThreadLocal。
大家肯定用过Redis,也知道Redis的命令以及用法,但是假如在某些场景下,误用了一些命令,后果会非常严重,所以要坚决杜绝这样的事情发生,由于我自己之前误用过,所以事故报告它来了! 这意味着命令每次被调用都需要使用上一次这个调用返回的游标作为该次调用的游标参数,以此来延续之前的迭代过程 当SCAN命令的游标参数被设置为 0 时, 服务器将开始一次新的迭代, 而当服务器向用户返回值为 3) "key:4" 4) "key:14" 5) "key:16" 6) "key:17" 7) "key:15" 8) "key:10" 9) " 2) "key:18" 3) "key:0" 4) "key:2" 5) "key:19" 6) "key:13" 7) "key:6" 8) "key:9" 9) "key:11" 在上面这个例子中, 第一次迭代使用 0 作为游标, 表示开始一次新的迭代。
踩踏,是一种极其原始的事故。每年东非大迁徙的过程中都有很多食草动物死于同类的蹄子之下。而人群的踩踏事故更是在史书上画下一个又一个血点。人类是天性爱群居的动物,人群就像磁铁一样对个人有着强大的吸引力。 世俗和宗教节日、体育比赛、音乐会、逃难、赶地铁、学校下课,这些都可能成为踩踏事故的发生条件。 实际上在踩踏事故中,遇难者大多并不是真的死于踩踏,他们的死因更多的是挤压性窒息——人的胸腔被挤压的没有空间扩张。在最极端的踩踏事故中,人在遇难时甚至可以保持站立的姿态。 如何在踩踏事故中脱身 任何时候去人流密集的地方,都应当观察周围,记住出口的位置,提前在大脑中规划撤离方案。 如何避免踩踏事故 然而,在踩踏事故发生现场,个人的力量实在太渺小了。不被踩踏的最有效办法就是避免踩踏事故发生。 对于个人而言,最重要的是不凑热闹。
最近遇到了一起依赖升级 + 异常数据引发的线上事故,教训惨痛,本文对此进行回故和总结。 同志们,关键时刻,完善的报警能给事故的处理和恢复赢得时间啊! By case 排查,发现服务 shard3 集群的机器报 i/o timeout 错误。 先止损,将事故影响降到最低,事后再来追查根因,总结复盘。 于是开始操作回滚, reset 到周四上线之前的一个 commit,重新打包,上线 shard3 集群。
这套系统最终使事故率下降19.9%,千公里风险次数下降49.3%。 平均每天能把一个司机从死亡线上拯救回来。 提供这一整套技术的是一家叫G7的技术公司,死磕物流十几年。
介绍 当您第一次创建新的Debian 9服务器时,您应该尽早采取一些配置步骤作为基本设置的一部分。这将提高服务器的安全性和可用性,并为后续操作奠定坚实的基础。 没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器。 第一步 - 以Root身份登录 要登录服务器,您需要知道服务器的公共IP地址。 默认情况下,在Debian 9上,允许属于sudo组的用户使用该sudo命令。 结论 此时,您的服务器基础扎实。您现在可以在服务器上安装所需的任何软件。 想要了解更多关于初始服务器设置的相关教程,请前往腾讯云+社区学习更多知识。 ---- 参考文献:《Initial Server Setup with Debian 9》
Web服务器软件 服务器概念 安装了服务器软件的计算机 服务器软件概念 接收用户请求,处理请求并做出响应 Web服务器软件概念 服务器软件的一种,在web服务器软件中,可以部署web项目,让用户通过浏览器访问项目 ,又被称为web容器 常见的Java相关的web服务器软件 webLogic:oracle公司的,大型JavaEE服务器,支持所有JavaEE规范,收费。 webSphere:IBM公司,大型JavaEE服务器,支持所有JavaEE规范,收费。 JBOSS:JBOSS公司,大型JavaEE服务器,支持所有JavaEE规范,收费。 Tomcat:Apache基金组织的,中小型JavaEE服务器,仅支持少量的JavaEE规范(如:servlet/jsp)开源免费的 Tomacat 下载:https://tomcat.apache.org
而这次事故正是git patch功能使用不当引起的,下面来模拟出一个完整的事故现场。 在最开始我们有一段原始代码如下,可以明显看到,在第18行代码中,将dst错打成了src。 以上基本就是整个事故的全部还原过程。 这种事故很难发现,一旦发现却很容易就知道原因。 分析一下patch文件,就会立即发现,整个patch行为是靠以下7行代码来定位的。 从这个事故中,可以得到几点启示。 patch并不是100%可靠的,执行之后最好查看一下结果 2. 大扩号另起一行,对版本管理工具不友好:D 3.
1写在前面 ---- 分享一些通过 Bind9 配置DNS服务器的笔记 博文内容涉及 一个基本的 DNS 权威服务器 配置流程 理解不足小伙伴帮忙指正 我承认爱情是空幻的,只有情感才是真实的,是情感在促使我们去追求 BIND9 (Berkeley Internet Name Domain)可以实现权威的 DNS 服务器。 3部署 Bind9 权威服务器 基本步骤 安装 bind 软件 修改配置文件 /etc/named.conf 启用并启动服务 named.service 开通防火墙 dns 虽然名字叫 bind,但主要服务 ,以及配置文件都是 叫 named bind9 安装 [root@serverb ~]# yum -y install bind 简单看一下服务文件 # /usr/lib/systemd/system requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: 7e67c9a9f9d30b3df695a33864c64a1bb0d653a623775fd6
上一篇文章介绍了使用秘钥对登录服务器的好处。 本文使用服务器为Centos 7.6 除了使用密钥对之外,只能确保我们的服务器是安全的,但是并不能确保我们的应用是安全的。 为什么这么说? 以MySQL来说,我们希望在我的电脑可以连接我服务器的MySQL服务,那必然需要我的服务器开放3306端口,那么这个端口是暴露在公网的,如果你的密码简单,很容易就会被攻击。 还有就是服务器的权限问题,root用户权限过大,密码过于简单。 安全组一共有两个: 入站规则 表示登入服务器的允许,如果我常用的IP是 192.168.0.12,协议端口为 22,那么我设置了这个入站规则,就只能允许这个IP和端口登录服务器。 但并不是所有的云厂商提供的服务器都有安全组的概念,如果没有,就需要我们自行配置服务器的防火墙了。
如果要追求性价比,在众多不断增长的云服务器供应商中,选择最合适的云服务器是一件复杂的事情。知了云在此为您介绍选择最佳云服务器的9个步骤,帮助您筛选潜在的最合适的云服务器供应商。 如果您需要的不仅仅是基本的数据存储,还有些云供应商会提供系列云计算解决方案,例如IT网络的基础架构以及按需访问软件,应用程序和虚拟服务器等。 二、云服务器有多安全? 您应该了解您的数据将保存哪个数据中心,并向云服务器供应商咨询如何保护其服务器免受自然灾害,如风暴,洪水,火灾和地震等。 由于云服务器服务中断对于企业来说可能是代价高昂且相当具有破坏性的,因此最好选择尽可能宕机次数少的供应商,并了解清楚该云服务器供应商为确保在线率已采取的措施有哪些。 六、如何管理我的云服务器? 云服务器通常都提供基于web的管理平台,只要使用账号登录即可随时随地访问和管理云服务器,并且支持使用PC端和多样化的移动端。 七、是否支持数据的导入和导出?
近年来,给他人权益造成损害的AI事故快速增加,从自动驾驶汽车和有形机器人的安全事故到AI诊疗软件的错误诊断再到各种自动化决策系统的算法歧视、不公平决策,可以说,AI事故和AI侵权正日益成为AI社会的“新常态 根据OCED对全球范围内的AI事故的监测,2014年1月以来全球AI事故快速增加,截至2023年12月总数已达7195起。 在人工智能的应用无处不在的今天,人们必须正视AI事故和AI侵权的法律责任问题。当AI系统造成事故和损害,法律必须给受害人提供公平且有效的救济。但问题是,谁应为AI事故和AI侵权负责? 在过去,无过错赔偿机制完全取代侵权损害赔偿的例子并不鲜见,工伤、交通事故、医疗伤害、疫苗损害等领域存在类似的做法。 当AI系统引发事故、造成损害时,如何对AI系统的“行为”或表现进行评价,是一个关键的问题。
近期,青岛理想ONE在晚间高速路、辅助驾驶状态,与右前方变道货车相撞,副驾亲属受伤,车身前部遭受挤压…… 其后,相关行车记录视频流出,围绕事故的争议也随之展开,主要有两点: 一,在此次事故中,理想ONE 事故如何发生? 9月22日晚,近22点左右,青岛理想ONE车主,与父母家人,驾车行驶在G18高速内侧道。 此时,右前方一辆厢式货车打左转灯变道,试图进入内侧道。 理想承认,此次事故中车主使用了理想ONE辅助驾驶系统。 而且此次事故前后,理想股价也未受影响,市值创下新高。 并且值得注意的是,蔚来和小鹏也都在涨,中国造车新势力整体都在被看好。 只不过这种看好基于长远,可能暂时还不会因为一两次事故而发生变化。 但事故背后暴露的短板,如果不能及时亡羊补牢,或许就会风气浮萍之末。 对于理想是这样,对于智能汽车们,也是这样。 你说呢?你怎么看理想ONE这次事故和回应?
大家好,我是冰河~~ 今天一名读者紧急求助:忘记了服务器的root密码。 事件背景 事情是这样的,今天早上6点多一名读者在微信紧急求助:说是自己忘记了服务器的root密码,问我能不能帮忙解决下。 处理问题的经过 「注意:本文处理事件的经过并不是在这名读者服务器上操作的真实经历,而是事后我在自己虚拟机上还原的经过。」 总体处理的步骤如下所示。 (1)启动CentOS服务器,在开机第一个界面出现后马上按键盘E。 (2)进入这个界面继续按键盘E。 (3)选择第二个后继续按键盘E。 (4)进入这个界面后,输入一个空格,一个数字1。 (9)出现以下界面后直接输入reboot重启。 重启后问题就解决了。 总结 各位小伙伴们一定要记录好日常工作中的重要信息,尤其是工作中需要用到的账号等信息,这次服务器的root密码忘记了还能补救,如果是其他的一些重要信息遗失了,就很有可能找不回来了。
来源:大数据文摘本文约1300字,建议阅读5分钟这种警示牌不仅不会让交通事故的数量降低,反而会提高。 开车的时候,我们经常看到“事故多发”的警示牌。 论文地址: https://www.science.org/doi/10.1126/science.abm3427 80多万起事故分析表示,有警示牌反而事故发生率提升1.35% 这种交通警示牌在美国很多州都有设立 德克萨斯州每年的交通事故死亡人数一直居全国之首,该州于2012年采用了这些警示牌。 美国的警示牌更多的像这种LED显示屏,上面标注了从公路建造以来因为交通事故死亡的人数。 他们将死亡统计数据显示的那几周内发生的事故与当月其余时间发生的事故进行了比较,并且只比较了发生在同一时间和同一天的事故。 他们还控制了天气和假期,这可以独立影响事故的数量。 在论文中,研究人员展示了“反常识”的结果:在对844,939起事故的分析表明,在这些标志的下行10公里处,当这些死亡数字显示时,撞车事故增加了1.35% 。