微服务

  1. 什么服务熔断?什么是服务降级?
  • 熔断机制是应对雪崩效应的一种微服务链路保护机制。当扇出链路的某个微服务不可用或者响应时间太长时,会进行服务降级,进而熔断该节点微服务的调用,快速返回“错误”的响应信息。当检测到该节点微服务调用响应正常后恢复调用链路。在SpringCloud框架里熔断机制通过Hystrix实现,Hystrix会监控微服务间调用的状况,当失败的调用到一定阈值,缺省是5秒内调用20次,如果失败,就会启动熔断机制。熔断机制的注解是@HystrixCommand
  • 服务降级,一般是从整体负荷考虑。就是当某个服务熔断之后,服务器将不再被调用,此时客户端可以自己准备一个本地的fallback回调,返回一个缺省值。这样做,虽然水平下降,但好歹可用,比直接挂掉强。
  1. SpringCloud提供那些功能?
    配置管理、服务注册与发现、断路器、只能路由、选举机制、分布式会话、集群状态

  2. Spring cloud核心成员?
    Spring Cloud Netflix 核心
    Netflix Eureka 作为注册中心
    Netflix Hystrix 熔断器
    Netflix Zuul 提供动态路由,用于API网关端
    Spring Cloud Config 注册中心,支持本地,git,subversion

  3. 分布式事务的实现原理?
    主要基于三个方面:分段式事务(资源就绪和执行操作),可靠的消息服务,补偿机制 来实现分布式事务。
    2分段事务:需要事务协调者,和资源欲占机制。
    TCC-transaction事务框架
    TCC的补偿机制:try confire cancel
    比如在业务中,订单流程过程中需要对用户进行加积分和口库存操作,在try阶段,先把订单状态修改为修改中,积分表增加一个欲加减积分的字段,在库存表加一个欲占库存的字段,然后通过框架的感知,进行下一步是confirm 还是concel。

  4. 为什么要用微服务?
    实现服务的自治,并给其他服务提供服务。并且由服务管理实现服务降级和服务熔断,防止服务雪崩。

  5. 微服务的网关设计?
    微服务的网关主要借助于netfix Zuul实现,能够实现路由代理,需要使用@EnableZuulProxy注解。和其他服务端一样Zuul也会向Eureka注册服务。
    常用注解:
    @EnableWebSecurity 登陆认证
    @EnableEurekaClient Zuul使用Eureka注册中心
    @EnableEurekaServer 服务端使用Eureka注册中心
    @HystrixCommand 熔断机制 默认值是5秒内 调用20次,如果调用失败,则启用熔断机制。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值