写点什么

模块一

作者:Geek_2ce415
  • 2022 年 5 月 17 日
  • 本文字数:711 字

    阅读完需:约 2 分钟

一、微信业务架构


二、学生管理系统

1、项目需求

1 要求可以通过公网域名访问;

2 要求至少 3 人合作完成;

3 能够支撑管理 1000 个学生;

4 不推荐太简单和太复杂的方案。


2、复杂度分析

高性能:仅有 1000 名学生,数据量较少,不需考虑高性能。

高可用:学生管理系统使用时间频率不会太高,但最好还是保证服务可用。

数据高可用:虽然只有 1000 名学生,但数据全部丢失会有一定的影响,需考虑数据备份。

可扩展:数据量较少,即使学校扩招也会有一定的范围,暂不考虑可扩展性。

成本:毕设项目,而且经济条件一般,不宜使用太大成本。


3、备选架构

3.1、方案一:

优点:

1、采用 nginx 做均衡,两台业务服务器,以保证服务可用。

2、mysql 数据库采用准备,确保数据可用。

缺点:

1、需要多一台 nginx 服务器,成本增加。

3.2、方案二:


优点:

1、采用了 dns 做路由转发,两台业务服务器,以保证服务可用。

2、相比方案一,可以少部署一个 nginx 服务器,节省一台服务器。

3、mysql 数据库采用准备,确保数据可用。

缺点:

暂无

3.3、方案三:

优点:

1、采用了 dns 做路由转发。

2、mysql 数据库采用准备,确保数据可用。

3、考虑了团队技术优势,前后端分离,团队可以前后端同时开发,节省时间。

4、成本和方案二差不多。

缺点:

1、php 前端服务器一旦挂了,服务将不可用。

4、方案选择

最终选择方案二。


因为方案二符合架构设计三原则:

1、合适原则:符合团队技术水平和积累;开发成本低;系统运维成本低。

2、简单原则:不进行系统拆分,部署维护简单。

3、演化原则: 学校的学生数量不会发生很大变化,系统架构够用多年。


不选方案一原因:

方案一需要多部署一个 nginx ,也就是需要多准备一台服务器,成本比方案二高。


不选方案三原因:

php 前端服务器一旦挂了,服务将不可用。


用户头像

Geek_2ce415

关注

还未添加个人签名 2021.05.12 加入

还未添加个人简介

评论

发布
暂无评论
模块一_Geek_2ce415_InfoQ写作社区