对数据库的操作太频繁导致效率的下降,也是影响系统性能很重要的一部分,其实服务器也是普通电脑的构成,主要的资源是CPU和内存,这两个因素无论是哪种都有可能导致系统的崩盘,如果是CPU被占满了,系统的反应会变得异常缓慢,时间长了可能还会慢慢缓过劲来,内存如果占满了那么会导致系统的崩溃,直接运行不下去了,其实宕机核心点不会跑出这两种因素。
现在就常见的服务器宕机问题做个归纳总结:
1.磁盘空间被占满,现在程序员运行的时候都习惯于带上log打印,如果时间长了加上没有清理的机制早晚会出问题,这个错误在平时运行过程中经常出现,如果使用的云计算服务器通常在系统崩盘之前都会发个短信,通知你的系统处于崩溃的边缘。
2.并发性能问题,如果多个人同时操作一个数据库或者数据块,会导致系统假死状态,这种属于争抢CPU资源问题,可以通过增加硬件配置以及优化软件代码的效率去解决,数据量如何足够大就可以考虑分布式的管理
3.数据受损或者被破坏导致系统崩盘,所以常见的做法是都会配置备份盘,出现问题抓紧拿到备份盘来顶上,现在公司使用的是阿里云的服务器,稳定性相比之前好太多了,中间换过电信云,腾讯云虽然价格低点,最后受不了直接换成阿里云,再也不想换回去了,数据的稳定性永远是第一位的。
4,一些没有必要的误操作,很多时候是因为程序员或者运维人员的误操作大致服务器大面积的宕机,这种事件在很多云服务提供商身上都发生过,根本层面还是管理问题。后台管理的任何细节都有可能
服务器宕机查找问题的几个线索:
1.看看服务器是不是存在内存泄漏问题,有些时候重启机器开始还能正常运行弄了一段时间之后就会变得非常缓慢,十有八九都是内存的问题
2.是否有黑客入侵造成,有些非常关键重要的数据也是黑客最感兴趣的,一般来讲这种概率不是很高
3.是不是数据库死锁导致的,访问量过大导致,连接数过多造成的。
服务器宕机一旦发生就会引起用户的无数的投诉,无论在什么情况下稳定永远是第一位,现在大的功能升级除非已经百分百验证成功,否则引起的后果不堪设想。
希望能帮到你。
之前我们单位夜晚有一台设备down了,这台设备做的堆叠,而不是备份,所有下联线路全部连接在主设备上。结果当晚凌晨,主设备的电源模块损坏了!这... 你能看出规律吗?我也想知道为什么它偏偏凌晨损坏了!
所以说,偶然性事件,不能说大部分!
但是夜间割接倒是正常,选择在用户最少的时候做可能影响业务的必要事情是常识。
虽说在凌晨的时候,使用系统的用户非常少,但是服务器在这个时候要做的工作可能一点儿也没有少:
再说一个很久以前看到的,同行们分享的服务器宕机的经历,有些经历非常之神奇,大家就当段子看吧(为了方便,我就按照第一人称来讲述)。
我们服务的甲方是一家医院,机房就在医院的楼中,最近机房的服务器经常性的发生宕机,公司的工程师去了几次也没有发现问题;后来公司被折腾的没办法了,决定让一个工程师晚上住在机房,看看半夜机房中究竟发生了什么事儿,想着就算找不到原因,也能在服务器宕机后第一时间重启。
后来发现原因,到了凌晨三四点的时候,机房门打开了,进来一个值夜班的小护士,看了一眼说:“又没有人,开着空调不浪费电么?”然后就把机房的空调关掉了,然后气温上升...
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
偶发性的,可以能是你浅意识的,因为这种问题印像最深刻,可能认为比较多,通过做记录去试下。
宕机一般分5种情况:
1、程序上出了问题导致程序崩溃。
2、cpu\\Gpu 、内存占满了。
3、硬盘空间满了
4、数据库表空间满了
5、机房温度过高
以上是个人在运维过程中所遇到的问题,做的总结性回答
这里需要说明一下,服务器宕机是什么意思呢? 我们日常说的“宕机”中的“宕”其实指的是英文“down”,宕机表示当前服务器或服务无响应或者不在线状态。
服务器的宕机可分为人为控制的宕机、不可控的宕机。 这两者有什么区别呢,下面来具体说明一下:
1、人为可控的宕机行为
服务器长时间的运行可能会带来一些(非致命性)问题,又或者我们需要对服务器进行软/硬件的升级维护时,可能需要停机或者重启操作。这种情况下的宕机是可控的,在我们的计划之内。
2、不可控宕机行为
这种因素就很多了,比如说 服务器突然蓝屏、服务异常崩溃、突然断电断网了 ,这时候服务(器)就无法正常提供服务,这些都是不可控因素导致的。
而 在我们的日常运维工作中,计划性的宕机维护一般都选择在半夜 来做这些事,为什么呢,原因主要有这几点:
1、 减少对用户的影响
凌晨大家基本上都休息了,用户量较白天来说小得多,所以选择在此时进行系统及硬件的维护导致的宕机对用户的影响较小,就算有影响也只是影响小部分用户。
2、 有足够的时间来处理故障
在凌晨进行维护,就算有问题,技术人员也有足够的时间(比如说:00~05点)去处理故障。如果换成在日间维护,服务(器)宕机1小时以上投诉单全都过来了,压力很大的。
服务器宕机是指服务器因为一些原因导致服务器无法正常运行,造成网络断开,无法正常使用网络。服务器宕机一般都发生在凌晨,为什么会出现这种情况呢? 像我们公司是从事 科技 互联网设备生产的,为了不影响正常生产,系统升级的时候一般都是在凌晨,而且很多的数据处理也放在这个时候,服务器在这个时候也容易出现问题,具体分析有以下几种原因:
1. 系统在升级或处理大的数据时,硬盘空间被占满,如果没有人能及时清理磁盘空间,服务器就会出现卡顿的问题造成宕机。
2.如果是多台设备同时在操作,使用这一个数据库,会引起系统假死的现象,这个是属于抢占CPU的资源造成的,会导致服务器不堪自负,网站访问量猛增,程序中毒遭到很多的应用都在消耗服务器,最终死机无法响应。
3.由于凌晨维护人员减少,会出现断电,温度过高等等环境因素的影响,使服务器死机等等,不过这种情况是很少见的,因为现在机房都有发电机备用避免停电造成的数据丢失,温度也是采用的恒温系统。
4.有的企业为了节省服务器的费用,会租用较低配置的服务器来从事很多的工作,使服务器超负荷运转,结果是可以预料得到的,宕机就会经常发生。
5.服务器宕机一般和内存有很大的关系,有些服务器运行了一段时间后速度就变慢了,基本上就是内存出现问题,要检查一下内存是否存在泄漏的问题。
服务器宕机会出现一系列的问题,造成的损失也是无法估量的,只有平时定期做好维护,在凌晨的时候也要注意掌握使用状况才能避免宕机,无论在任何时候,服务器的稳定运转才是最重要的。
服务器应用软件在运行过程中状态很稳定,一般不会发生问题。宕机发生在凌晨概率高的原因是:一是功能升级、硬件更换多在凌晨,导致问题发生概率高;二是批量执行多在凌晨,瞬间资源消耗很大,数据问题、硬件资源问题、甚至处理逻辑问题都容易导致宕机。另外,如果是联机交易出了问题,很容易被发现,不会让系统宕机。
原理其实很简单:这就如同我们白天忙碌着很多事物性的工作,就如同搬运工一样,不停的搬运物品入库,只有在物品都搬运完了的时候,我们才能开始整理这些物品,整理仓库,。
其二,服务器在白天的时候,其实都在实时处理数据的“搬运工”状态,只有在实时性数据处理工作(搬运工作)完成以后,才有机会或才能腾出手来去做数据的归纳和整理。所以,服务器的宕机时间,通常会发生在使用率最低的时间段。仅此。
正常跑稳的业务,一般很难因为正常业务操作造成服务器宕机的。服务器资源问题大部分情况下是可预测,可控制的。
最容易造成宕机的事情,反而是开发/运维的不当操作造成的。比如更换服务器硬件,升级/安转os程序包,发布新代码,批量更新数据等等,这些事一般都是半夜业务量小的时候做。
因为凌晨是最困得时候,服务器一打盹就宕机了。
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
ping 测试主机是否存活
arp 负责将ip地址解析成mac地址
tracepath 路由跟踪
使用场景,当你的网络出现问题的时候,一般运营商会要你提供一份路由跟踪的表 就是用这个命令来实现
CPU
iftop 查看网卡流量使用 不能查询具体的应用程序使用了多少流量
nethogs 查看进程使用了具体的流量 可以查出程序的PID
用法 nethogs eth0(如果外网流量大就填外网,如果内网流量大就填内网)
通过pid使用 ps axu 和lsof查出进程 以及程序文件里面什么问题造成的
凌晨三点 有台机器的读写非常高 导致业务部正常
找出读写最高的进程出来 (pid)
查看IO占用情况
和netstat的功能一模一样,
但是当你服务器的socket连接数量非常大的时候,使用netstat就是浪费你的生命 ss最大的优势就是他比netstat快很多
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)