SpringCloud微服务架构和SOA架构
1,传统的三层架构
在传统的架构中,SSH,SSM,主要分为web 控制层,业务逻辑层,数据库访问层,单点项目,项目没有拆分,所有的开发任务全部写在一个项目中,耦合度比价高,如果程序中的一个功能出现了问题,所导致的就是整个服务挂掉。
2,SOA 架构
因为传统项目的耦合度比较高,所以架构的发展逐步面向服务化,将共同的业务逻辑抽取出来,形成一个服务,可以供其他服务所调用,服务和服务之间的调用通过RPC远程调用(底层就是httpclient技术)
SOA 架构中通常使用xml 实现通讯,xml 比较重,占宽带,相对冗余,在高并发情况下,很受影响。底层是使用webservice 技术,ESB 消息总站
3,微服务架构
Springcloud 就是微服务架构,是由SOA 架构发展而来,没有ESB 总站的传输方式,采用http + json 轻量级的传输方式
微服务的架构更加的轻量级
微服务架构中,服务的独立性更加的强,可以有独立数据库,独立的缓存、数据库、消息队列等资源,保障服务与服务之间更加的不受影响
微服务架构中,服务化的粒度更加的精细,所以,更加适合敏佳开发
4,springcloud微服务架构
SpringCloud 提供了一套完整的微服务解决方案,不像其他框架只是解决了微服务中某个问题。
主要可以分为:
服务治理(注册中心):Dubbo (阿里巴巴),Dubbox(当当网在Dubbo继续开发的),Eureka(已经闭源了),consul
分布式配置中心:disconf(百度)、Netfix的Archaius、360的QConf、SpringCloud、携程的阿波罗等。
分布式任务调度平台:xxl-job
服务跟踪:hyra(京东),springcloud的sleuth等
最新文章
- [转]EntityFramework状态变化AutoDetectChangesEnabled与SaveChanged参数说明
- Yii2中系统定义的常用路径别名,如果获取web的url
- Mac下使用Automator实现截屏编辑保存
- Junit 断言 assertThat Hamcrest匹配器
- 自定义的GitLab 头像无法正常显示以及URL总是指向localhost
- aix archPlat
- 数组-Find Minimum in Rotated Sorted Array
- 关于ls命令的实例
- python爬虫requests json与字典对象互相转换
- ROS_Kinetic_28 turtlebot gazebo demo例子
- NPOI 关于Excel的学习
- 使用ssh服务管理远程主机
- POJ 1679 The Unique MST 【判断最小生成树是否唯一】
- [转]2017年最具价值的十大开源项目!GitHub 年度报告~
- SAS infile 导入txt示例
- 统计numpy数组中每个值的个数
- HDU 5652 India and China Origins(并查集)
- css活用,评分点击星星
- CF Round 542 Div1.
- 前端HTML以及HTML5(基本标签)
热门文章
- Ubuntu18.04LTS安装docker报错:Command 'lsb_release' not found
- [Statistics] Comparison of Three Correlation Coefficient: Pearson, Kendall, Spearman
- 微信小程序从开发至发布的流程
- kafka知识整理
- CKEditor4.7怎样实现上传图片,浏览服务器(无需ckfinder),nodejs图片管理,字体居中,图片居中(超详细)
- LeetCode 153.Find Minimum in Rotated Sorted Array(M)(P)
- C/C++ 手动开O2
- freecplus框架,Linux平台下C/C++程序员提高开发效率的利器
- Core + Vue 后台管理基础框架1——运行系统
- nginx升级不改变配置文件