一般系统的软件层架构,无非是围绕着系统的高可用去做。
高可用
以下视角,客户端发起的一个请求,到服务端返回数据,这整个流程来看,
1、请求一般先走网关。拦截非法请求,分发分流(负载均衡)
2、请求到达应用层服务器,处理业务。假如这单台服务器发生故障(单点故障),整个系统就挂了。所以,对应需要做冗余、集群,保证请求能分发到集群中的某一台应用服务器,是能正常工作的
3、应用层做业务处理,访问数据层服务器。同上,解决单点故障,需要做冗余、主从库
4、高并发下,为了缓解DB压力,缓存也是必不可少的
5、请求返回/结束
基础架构
当然了,一个业务系统的正常日常运作,往往需要很多其它基础系统/服务支撑。
比如:日常的监控系统、日志收集分析、项目快速部署/自动化部署,等等。
脑图
![](https://img.haomeiwen.com/i1776769/24e47a151e047fff.png)
网友评论