1、单体框架
单体架构就是一个项目里面包含这个项目中全部代码,一个应用搞定全部功能,在单体架构项目中,团队都是通过包(package)进行区分每个模块。
项目名:
-- com
--xxx
--common
-- utils
--user
-- controller
-- service
-- mapper
-- sys
-- controller
-- service
-- mapper
(1)优点:部署简单、维护方便、成本低。
(2)缺点:当项目规模大、用户访问频率高、并发量大、数据量大时,会大大降低程序执行效率,甚至出现服务器宕机等情况。
(3)适用项目:传统管理项目,小型互联网项目。
2、分布式架构
分布式架构会把一个项目按照特定要求(模块或功能)拆分成多个项目,每个项目分别部署到不同的服务器上。
项目1:
--com.xxx.mmm
-- controller
-- service
-- mapper
项目2:
--com.xxx.nnn
-- controller
-- service
-- mapper
(1)优点:
增大了系统可用性。减少单点故障而导致整个应用不可用的情况。增加重用性。因为模块化,所以重用性更高。增加可扩展性。有新的模块增加新的项目即可。增加每个模块的负载能力。因为每个模块都是一个项目,所以每个模块的负载能力更强。
(2)缺点(相对于单体架构):
成本更高。架构更加复杂。整体响应之间变长,一些业务需要多项目通信后给出结果。吞吐量更大。吞吐量=请求数/秒。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)