架构训练营 Week1 作业
微信业务架构图
分析:微信业务主要分为四个大模块
用户管理
社交业务
支付业务
第三方程序管理
而其中用户管理又可以拆分为:
用户登陆与注册管理
交友
一对一聊天
语音通话
视频聊天
聊天记录管理
社交业务又可以分为:
看一看
摇一摇
公众号
聊天业务
朋友圈
流媒体
学生管理系统 毕业设计架构
设计了上图的三个方案
方案一: 采用了 ECS 服务器 4 台,1 台 nginx 和 3 台业务子系统服务器,mysql 2 台,一主一备,这个方案将系统拆成 3 个部分,大家可以分工合作,但是比较费钱,那么多服务器和数据库价格不菲。
方案二:采用了 ECS 服务器 3 台,1 台 nginx 和 2 台业务子系统服务器,mysql2 台,一主一备。这个方案将业务拆分成 3 个模块,大家分工合作,但是最终发布还是在一个服务器上,采用两台 ECS 是因为需要做负载均衡,mysql 一样是一主一备。稍微省点钱,技术上没有进行子系统的拆分,所以可能会有所减分,但是就合适原则还是比较好的。
方案三:采用了容器化部署,4 个容器,1 个 nginx 和 3 个业务容器,mysql 采用云数据库,支持主备。这个方案是较为省钱的一个,因为所有的组件都是云组件,且是容器,现在有些平台容器可以按照用量收费,因此较为省钱。mysql 也可以购买支持主备的,但是这样就少了一些 mysql 主备技术的展现,技术分上会减分。
最终可能会选择方案三,因为最为经济、灵巧,容器框架可以保证较好的可用性。如果怕 mysql 减分,那么把 mysql 也做成主备就行了,那样就要再购买一个数据库服务器。
版权声明: 本文为 InfoQ 作者【红莲疾风】的原创文章。
原文链接:【http://xie.infoq.cn/article/ae7986aa7cd783d9b30754472】。未经作者许可,禁止转载。
评论