webservice优点缺点,webservice接口的优缺点

首页 > 经验 > 作者:YD1662022-11-14 20:24:27

Ribbon主要为客户一侧提供软件负载均衡算法,客户端组件包括连接超时、重试、重试算法等等,并带有可插拔/定制的负载均衡组件策略,并集成一些功能,比如使用Archaius完成运行时配置。

需要注意的是这里的负载均衡是客户端LB,和我们用Ng或者Haproxy做的LB是有本质区别的,可以理解为细粒度的LB。

API网关

微服务网关,介于客户端与服务器之间的中间层,所有的外部请求都会先经过微服务网关。客户端只需要与网关交互,只知道一个网关地址即可。

webservice优点缺点,webservice接口的优缺点(17)

配置中心

配置中心就是把项目中各种配置、各种参数、各种开关,全部都放到一个集中的地方进行统一管理,并提供一套标准的接口。

当各个服务需要获取配置的时候,就来配置中心的接口拉取。当配置中心中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的信息,使之动态更新。

Spring Cloud Config将配置信息中央化保存, 配置Spring Cloud Bus可以实现动态修改配置文件,整体基于观察订阅的设计模式,当然,也可以使用zookeep来实现

熔断

熔断:这一概念来源于电子工程中的断路器(Circuit Breaker)。在互联网系统中,当下游服务因访问压力过大而响应变慢或失败,上游服务为了保护系统整体的可用性,可以暂时切断对下游服务的调用。这种牺牲局部,保全整体的措施就叫做熔断。一般熔断的时候,会提供对应的熔断策略。

spring-cloud-netflix-hystrix 对 Hystrix 进行封装和适配,使 Hystrix 能够更好地运行于 Spring Cloud 环境中,为微服务间的调用提供强有力的容错机制。

雪崩

客户端访问A服务,而A服务需要调用B服务,B服务需要调用C服务,由于网络原因或者自身的原因,如果B服务或者C服务不能及时响应,A服务将处于阻塞状态,直到B服务和C服务响应。此时若有大量的请求涌入,容器的线程资源会被消耗完毕,导致服务瘫痪。

服务与服务之间的依赖性,故障会传播,造成连锁反应,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩”效应。

断路器将远程方法调用包装到一个断路器对象中,用于监控方法调用过程的失败。 一旦该方法调用发生的失败次数在一段时间内达到一定的阀值,那么这个断路器将会跳闸

在接下来时间里再次调用该方法将会被断路器直接返回异常,而不再发生该方法的真实调 用。 这样就避免了服务调用者在服务提供者不可用时发送请求,从而减少线程池中资源的 消耗,保护了服务调用者。

虽然断路器在打开的时候避免了被保护方法的无效调用,但是当情况恢复正常时,需要外部干预来重置断路器,使得方法调用可以重新发生。 所以合理的断路器应该具备一定的开关转化逻辑,它需要一个机制来控制它的重新闭合

链路追踪

随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要对一次请求涉及的多个服务链路进行日志记录,性能监控即链路追踪。

Spring Cloud Sleuth主要功能就是在分布式系统中提供追踪解决方案,并且兼容支持了zipkin。

Spring Cloud的技术实现

webservice优点缺点,webservice接口的优缺点(18)

Spring Cloud的子项目,大致可分成两类.

一类是对现有成熟框架”Spring Boot化”的封装和抽象,也是数量最多的项目;

二类是开发了一部分分布式系统的基础设施的实现,如Spring Cloud Stream扮演的就是kafka,ActiveMQ这样的角色。对于我们想快速实践微服务的开发者来说,第一类子项目就已经足够使用。

Spring Cloud微服务典型部署

webservice优点缺点,webservice接口的优缺点(19)

微服务引擎 CSECSE功能介绍

webservice优点缺点,webservice接口的优缺点(20)

上一页12345下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.