- 流量入口nginx
nginx 作为整个架构的流量入口,可以理解为一个外部的网关,承担着请求的路由转发,负载均衡,动静分离等功能,组为一个核心入口点,nginx 肯定要采用多节点部署,同时通过keepalived 来实现高可用,从而保障整个平台的高可用
- 网关
网关是nginx 后的一个核心组件,承担请求鉴权,路由转发,协议转换,流量监控等一系列的功能,
- 业务组件:
实现相应的服务领域划分,服务限界上下文的限定,DDD领域驱动设计
- 服务注册中心
把所有服务组件都注册到注册忠心,进而实现服务的动态调用
- 缓存和分布式锁
为了保障redis 的高可用,采用哨兵部署,不是三个redis 节点,一主二从,同事部署三个哨兵节点,实现故障转移。redis 的流量很大,达到了单点的redis 的性能瓶颈,我们可以采用redis 集群模式来实现分布式存储。
- 数据持久层
保证服务读写效率以及高可用行,实现读写分离,保证mysql读写性能
随着业务的增长,mysql 单表的性能可能会有相应的,我们采用分库分表的方式来对数据库进行水平拆分以及垂直拆分。
- 结构行数据存储
mysql 这种比较擅长存储关系型的数据,项目中有时候需要存储结构行数据的场景,比如存储json 字符串,这种对于mysql的存储往往不合适,我们这时候会采用mangodb 来存储。
- 消息中间件
服务之间的结构往往是通过mq 来实现的
posted @
2025-06-24 12:04
wsl-hitsz
阅读(
20)
评论()
收藏
举报