美文网首页
高并发系统设计分析

高并发系统设计分析

作者: seaGod | 来源:发表于2019-01-19 11:51 被阅读0次

交易型系统设计原则:

有限的资源前提下:先解决核心问题,预测并发现未来可能出现的问题。

1.设计系统:墨菲定律。

2.系统划分:康威定律。

3.资源的二 八定律。

高并发原则:

1.无状态。应用无状态,容易水平拓展。 实际:应用无状态,配置文件有状态。(配置文件或配置中心指定)。

2.拆分

系统维度,功能维度,读写维度,aop维度,模块维度。

3.服务化

4.消息队列

大流量缓冲(牺牲强一致性,保证最终一致性),数据校对

5.数据异构

数据异构,数据闭环。

6.缓存

客户端(浏览器缓存,APP客户端缓存(大流量js/css/image.无网络时托底数据给用户看),cdn缓存,没有cdn,nginx代理一层接入层。应用层缓存。分布式缓存。并发化。

高可用原则:

1.降级

开关集中化管理,可降级的多级读服务(只读本地缓存,只读分布式缓存,只读默认降价数据),开关前置化,开关前置化,业务降级。

2.限流 目的防止恶意请求流量,恶意攻击,或者防止流量超出系统峰值。

恶意流量只访问到cache

穿透到后端应用的流量考虑Nginx的limit模块处理。

原则限制流量穿透到后端薄弱的应用层。

3.切流量

4.可回滚

版本化的目的是实现可审计可追溯,并且可回滚。(事务回滚,代码库回滚,部署版本回滚,数据版本回滚,静态资源版本回滚)

负载均衡和反向代理实现分流,限流保护服务免受雪崩之灾,降级实现部分可用,有损服务,隔离实现故障隔离,设置合理的超时与重试机制避免请求堆积造成雪崩,回滚机制快速修复错误版本。

业务设计原则:

1.防重设计

2.幂等设计

3.流程可定义

4.状态与状态机

5.后台系统审批化

6.文档注释(文档库:设计架构,设计思想,业务流程,现有问题)

一个丰满的架构系统包含的内容:

业务功能,系统高并发,高可用,高可靠等。系统容量规划(流量、容量等),SLA(Service-Levle agreement)制定(吞吐量,响应时间,可用性,降级方案等),压测方案(线上,线下等)

监控报警(机器负载,响应时间,可用率等)应急方案(容灾,降级,限流,隔离,切流量,可回滚等)。

本文内容来源 《亿级流量网站架构核心设计》

相关文章

网友评论

      本文标题:高并发系统设计分析

      本文链接:https://www.haomeiwen.com/subject/nxjjoftx.html