zoukankan      html  css  js  c++  java
  • 后台服务相关基础知识

      1、雪崩与过载保护

      雪崩:外部请求数(较长时间地)超过系统处理能力,(加上时延敏感服务触发的大量重试请求,)使得接收请求的缓冲区被迅速填满(并一直保持满的状态,如果缓冲区很大),后续每个请求都不能在超时前处理,因此系统的服务能力表现为0。这种情况不能自动恢复。

      建议:

      1)明确系统的最大处理能力。做好自我保护,量力而为,而不是尽力而为。

      2)系统要有能力区分有效和无效的请求。一个不错的方案:在系统的每台机器上新增一个interface进程,它能够快速地从接收请求的缓冲区中取得请求,打上当前时间戳,压入一个FIFO的channel。业务处理进程从channel中获取请求及其时间戳,若时间戳小于当前时间减去超时时间(即已超时),就直接丢弃该请求或应答一个失败报文。

      3)前端系统有保护后端系统的义务,sla中承诺多大的能力,就只给到后端多大的压力。

      4)过载发生时,该拒绝的请求(超出处理能力范围的;无效的)越早拒绝越好。

      5)对于用户的重试行为,要适当的延缓;中间层server对后端发送请求时,重试机制要慎用,一定要用的话要有严格的频率限制。

      6)若雪球发生了,直接清空雪球队列(如重启进程清空socket缓冲区)可能是快速恢复的有效方法。

      7)过载保护很重要的一点,不是要成功应答所有请求,而是要保证在高压下系统的服务能力不要陡降到0,要对外展现最大有效处理能力。

      2、GSLB:全局负载均衡

      目标:用户就近接入、流量负载均衡等。为此,需要确定用户的IP归属地、实时监测服务器的状态及流量等。

      3、存储:在线、近线和离线

      1)在线存储:存储设备和所存储的数据时刻保持“在线”状态,可供用户随意读取,满足计算平台对数据访问的速度要求。存储设备一般为磁盘和磁盘阵列等。

      2)近线存储:介于在线存储和离线存储之间。将那些并不是经常用到,或者说数据的访问量并不大的数据存放在性能较低的存储设备上。

      3)离线存储:对在线存储数据的备份,以防范可能发生的数据灾难。存储设备一般为磁带等。



      参考链接:

      http://os.51cto.com/art/201205/336872.htm

      http://www.dostor.com/article/2012-04-01/7317005.shtml

    不断学习中。。。

  • 相关阅读:
    第二阶段冲刺进程2
    第二阶段冲刺进程1
    Alpha版使用说明
    回复每组的意见的评价
    每个组针对本组提出的意见的整理
    软件项目第一次Sprint总结
    站立会议7
    站立会议6
    团队博客11
    团队博客10
  • 原文地址:https://www.cnblogs.com/hanerfan/p/4096294.html
Copyright © 2011-2022 走看看