传统开发与微服务的区别
一、传统的开发模式
即所有的功都整合在一个项目里 然后打成一个war包里放在(Tomcat、JBoss、等javaEE容器里),其中包含 实体、DAO、Service、前端页面、等所有逻辑
优点
- 开发速度高效
- 便于测试
- 不存在各个功能之间调用存在的资源消耗
缺点
- 效率低下:可能会存在 A员工需要调用商品服务,但是B员工的登陆还没有写好,相互等待
- 稳定性不好:一个功能出错可能导致整个项目崩溃
- 难以维护:对于新接手项目的员工来说,所有的功能都耦合在一起不知从何下手
- 难以扩展:一旦项目开发语言定住、不可以在使用其他的开发语言
- 等等等…
架构图
二、微服务架构
微服务是架构思想、实际使用分布式系统开发 根据模块化拆分应用,降低的耦合性、实现快速开发和部署
优点
- 可以更方便的分工合作、快速开发
- 不会出现说一个服务挂了 从而导致整个系统崩溃
- 可以根据实际访问数量来动态调整服务的数量
- 高扩展性、可以使用不同的开发语言
- 一个服务只做一件事、松耦合
缺点
- 拆分粒度过大,导致运维困难
- 由于网络的不可靠性从而导致服务间的通讯成本增加
- 当服务数量增加,管理复杂性增加
- 可能付出双份努力、开发难度增大
架构图
完结
作者:yufire © [email protected]