内容简介:1、单体架构部署形式:一个应用、一个DB、一个WebServer优点:快速、灵活、技术要求低
1、单体架构
部署形式:一个应用、一个DB、一个WebServer
优点:快速、灵活、技术要求低
缺点:升级迭代难、业务支撑能力弱、部署扩展性差
2、SOA
部署形式:多个分布式应用集群部署、统一DB/按业务拆分DB、多个WebServer
优点:业务模块内部高内聚,业务模块之间低耦合、业务模块目标清晰、模块升级服务独立、针对业务洪峰可通过水平扩展来支撑
缺点:ESB(企业服务总线)职责过多(职责:统一服务管理、协议转换、消息转换、消息路由服务监控等)
3、微服务(比SOA组件化和服务化更彻底)
部署形式:多个分布式应用集群部署、多个服务模块DB、多个WebServer
优点:在SOA优点之上增加开发语言和数据库类型的多样化支持、服务治理职责更为单一
缺点:事务问题成为必须要解决的问题、系统复杂度增高
与SOA区别:去掉ESB的大一统职责组件,将大一统职责组件进行拆分,组件职责进一步细化。
springcloud组件
Eureka Hystrix Hystrix dashboard+Turbine Spring Cloud Config Spring Cloud Bus Zuul Sleuth+Zipkin+springAdmin
Eureka(服务中心)
Eureka是Netflix开源的一款提供服务注册和发现的产品。完成服务注册、负载均衡和故障转移的功能。
Hystrix(服务熔断/故障隔离)
避免一个服务故障导致调用该服务的其它N个服务等待引起级联故障而造成服务雪崩(服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。)
针对故障服务Hystrix会间隔时间进行检查,如果服务恢复将继续提供服务。
Hystrix-dashboard+Turbine (监控工具)
Hystrix-dashboard是针对Hystrix进行实时监控的管理工具,能展示Hystrix Command的请求响应时间, 请求成功率等数据。添加Turbine工具则能同时展示多个服务信息。
Spring Cloud Config (配置中心)
将服务的配置信息服务化,通过Config Client连接到Config Server进行获取,通过手动Refresh可完成在服务的运行期间重新加载配置更新。
Spring Cloud Bus(广播指令)
Spring Cloud Bus通过轻量消息代理连接各个分布的服务节点。可通过它广播消息指令到任一服务节点。比如与Spring Cloud Config配合使用自动识别配置变化,可通过该组件通知服务节点自动Refresh完成配置的更新。
Zuul (服务网关)
Zuul是Netflix出品的一个基于JVM路由和服务端的负载均衡器。提供对服务节点动态路由、监控、弹性、安全等服务。
Spring Cloud Sleuth+Zipkin+springAdmin (消息链路跟踪)
随着服务的越来越多,对调用链的分析会越来越复杂。系统的架构改进需要监控服务和服务之间通讯的各项指标达成情况如(服务间调用关系、调用链、各服务消耗时间等)。Zipkin是Twitter的一个开源项目,允许开发者收集 Twitter 各个服务上的监控数据,并提供查询接口。
观点仅代表自己,期待你的留言。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- React 穿透获取被高级组件装饰的目标组件实例
- 华为汽车中自动驾驶目标检测怎么理解?(通过跨模式的雷达目标检测)
- 神经网络目标计数概述:通过Faster R-CNN实现当前最佳的目标计数
- CVPR2019| 05-07更新14篇论文及代码合集(1篇oral,含目标检测/视频分割/目标跟踪等)
- 目标检测入门学习笔记
- SMART目标成长法
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。