模块一作业
微信业务架构图

学生管理系统架构设计
备选架构一

优点
3 个模块相对独立,可用性高
Mysql 免费,行业大范围使用,可靠性高
技术栈相同,协作成本低
缺点
3 套系统,运维成本较高
4 台机器+2 台数据库,费用较高
备选架构二

优点
相对方案 1,mongodb 有效提高开发效率
缺点
mongodb 可靠性不如 mysql
备选架构三

优点
转化为单体架构,减少复杂度
缺点
整体服务可用性降低,单模块故障将导致整体故障
备选架构四

优点
使用 dns 代替 nginx 负载均衡,减少服务器成本
缺点
dns 作为负载均衡,扩缩容灵活性差
备选架构五

优点
引入 php,适配团队技术栈
缺点
异构技术栈导致系统复杂度增加
运维成本增加
最终选择
最终选择备选架构五,原因如下:
作为毕设项目,整体架构较为复杂,有一定的技术含量
符合团队技术栈
用户量 1000,不太需要考虑扩缩容问题
服务器数量在三台以内,使用云厂商学生优惠,成本低
版权声明: 本文为 InfoQ 作者【TIEDPAG】的原创文章。
原文链接:【http://xie.infoq.cn/article/7a7ec75f5208c1e1da6c7545a】。未经作者许可,禁止转载。
评论