模块一作业
微信业务架构图
学生系统毕业设计
方案一:nginx+防火墙对外提供服务,满足真实可用要求。架构为微服务架构,三人均会 java 可模块化开发,数据库主备结构,保证数据安全可用。
方案二:由于经费有限,去除防火墙和微服务支撑服务,改为业务服务和领域服务双服务架构,由 PHP 高手开发业务层服务,java 开发领域层服务,内部调用通过 nginx 转发。数据库主备结构,保证数据安全可用。在经费可控的情况下,发挥开发人员各自优势完成项目。
方案三:架构改为单体架构,由于学生只有 1000 人,数据库改为单实例,三人全用 java 开发。
最终选择方案二,理由如下:
方案一固然满足高可用高可扩展,但运维费用高,且性能大大高于 1000 人的要求,且架构复杂。不符合合适原则、复杂原则。方案三成本最低,但不满足真实可用需求,且没有发挥开发人员特点。方案二虽在数据库上有些成本,但满足真实可用要求,是必须的,且分层开发符合开发人员特点,php 开发业务简单,java 在领域层可做通用性高、可扩展的功能。
评论