本书结构
本书共9章,以下是各章的内容概要:
第1章主要介绍SLA与可用性、FMEA理论、集群与分布式以及学习高可用需要具备的理论知识,例如CAP理论、选举算法、共识算法及一致性算法等。
第2章主要介绍影响软件质量的因素、应用的优雅关闭与启动、无状态服务、重试、幂等、健康检查、流量削峰、负载均衡、限流、熔断、降级、故障检测、故障隔离、集群容错以及集群部署等内容。
第3章主要介绍数据库高可用,包括数据库高可用概述、双节点MySQL高可用架构(MMM、基于MHA实现MySQL自动故障转移、MySQL Cluster架构、MySQL + DRDB + Heartbeat架构、云数据库高可用架构)、MySQL一主多从数据同步案例等内容。
第4章主要介绍缓存高可用,包括客户端分区方案、中间代理层方案、服务端方案(主从模式、哨兵模式、Redis集群模式、Codis和Redis集群的区别以及云数据库Redis等内容)。
第5章主要介绍Nginx/LVS高可用,包括Nginx概述、Nginx+Keepalived保障高可用、LVS概述、Nginx+Keepalived+LVS保障高可用/高性能、DNS概述、DNS解析过程、DNS负载均衡、DNS+LVS+Nginx+Keepalived等内容。
第6章主要介绍异地多活概述、异地多活类型(同城异地多活、跨城异地多活、跨国异地多活3种类型)。
第7章主要介绍监控,告警概述、日志监控/告警方案、资源监控/告警方案、链路追踪监控等内容。
第8章主要介绍高可用与安全、DoS攻击类型与防护以及相关安全产品/工具。
第9章主要讲解什么是秒杀、最简单的秒杀系统、秒杀系统业务层面控制、CDN静态资源缓存、LVS/Nginx高可用设计、服务拆分/隔离设计、流量削峰/限流/降级、热点数据处理、减库存、容灾以及秒杀系统安全架构。