后端开发故障异常的术语大全

  1. 宕机

宕机,一般情况下指的就是计算机主机出现意外故障而死机。其次,一些服务器例如数据库死锁也可以称为宕机,一些服务器的某些服务挂掉了,就可以这么说。.

  1. coredump

当程序出错而异常中断时,OS会把程序工作的当前状态存储成一个coredunmp文件。通常情况下coredump文件包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息等。

  1. 缓存穿透/击穿/雪崩
  • 缓存穿透:缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时需要从数据库查询,查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,进而给数据库带来压力。

  • 缓存击穿:缓存击穿是指热点key在某个时间点过期的时候,而恰好在这个时间点对这个Key有大量的并发请求过来,从而大量的请求打到db。

  • 缓存雪崩:缓存雪崩是指缓存中数据大批量到过期时间,而查询数据量巨大,引起数据库压力过大甚至down机。

  • 与缓存击穿不同的是:存击穿是热点key失效,缓存雪崩是大量的key同时失效。

  1. 500/501/502/503/504/505
  • 500 Internal Server Error:内部服务错误,一般是服务器遇到意外情况,而无法完成请求。可能原因: 1、程序错误,例如:ASP或者PHP语法错误;2、高并发导致,系统资源限制不能打开过多的文件所致。

  • 501Not implemented:服务器不理解或不支持请求的HTTP请求。

  • 502Bad Gateway:WEB服务器故障,可能是由于程序进程不够,请求的php-fpm已经执行,但是由于某种原因而没有执行完毕,最终导致php-fpm进程终止。可能原因:1、Nginx服务器,php-cgi进程数不够用;2、PHP执行时间过长;3、php-cgi进程死掉;

  • 503Service Unavailable:服务器目前无法使用。系统维护服务器暂时的无法处理客户端的请求,这只是暂时状态。可以联系下服务器提供商。

  • 504Gateway Timeout:服务器504错误表示超时,是指客户端所发出的请求没有到达网关,请求没有到可以执行的php-fpm,一般是与nginx.conf的配置有关。

  • 505HTTP Version Not Supported:服务器不支持请求中所用的 HTTP 协议版本。(HTTP 版本不受支持)

除了500错误可能是程序语言错误,其余的报错,都大概可以理解为服务器或者服务器配置出现问题。

  1. 内存溢出/内存泄漏
  • 内存溢出:内存溢出(Out Of Memory)指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用,此时就会报错OOM,即所谓的内存溢出。

  • 内存泄漏:内存泄漏(Memory Leak)指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

  1. 句柄泄漏

句柄泄漏是进程在调用系统文件之后,没有释放已经打开的文件句柄。一般句柄泄漏后的现象是,机器变慢,CPU飙升,出现句柄泄漏的cgi或server的CPU使用率增加。

  1. 死锁

死锁是指两个或两个以上的线程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都抑制处于阻塞状态并无法进行下去,此时称系统处于死锁状态或系统产生了死锁。

  1. 软中断/硬中断
  • 硬中断:我们通常所说的中断指的是硬中断(hardirq)。

由与系统相连的外设(比如网卡、硬盘)自动产生的。

主要是用来通知操作系统系统外设状态的变化。

  • 软中断:1、通常是硬中断服务程序对内核的中断;2、为了满足实时系统的要求,中断处理应该是越快越好。

linux为了实现这个特点,当中断发生的时候,硬中断处理那些短时间就可以完成的工作,而将那些处理事件比较长的工作,放到中断之后来完成,也就是软中断(softirq)来完成。

  1. 毛刺

在短暂的某一刻,服务器性能指标(如流量、磁盘IO、CPU使用率等)远大于该时刻前后时间段。毛刺的出现代表这服务器资源利用不均匀,不充分,容易诱发其他更严重的问题。

  1. 重放攻击

攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。它是一种攻击类型,这种攻击会不断恶意或欺诈性地重复一个有效的数据传输,重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器。

  1. 网络孤岛

网络孤岛指集群环境中,部分机器与整个集群失去网络连接,分裂为一个小集群并且发生数据不一致的状况。

  1. 数据倾斜

对于集群系统,一般缓存是分布式的,即不同节点负责一定范围的缓存数据。我们把缓存数据分散度不够,导致大量的缓存数据集中到了一台或者几台服务节点上,称为数据倾斜。一般来说数据倾斜是由于负载均衡实施的效果不好引起的。

  1. 脑裂

脑裂是指在集群系统中,部分节点之间网络不可达而引起的系统分裂,不同分裂的小集群会按照各自的状态提供服务,原本的集群会同时存在不一致的反应,造成节点之间互相争抢资源,系统混乱,数据损坏。