• 欢迎访问红科技
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏红科技吧

Dubbo高级特性应用之关闭服务检查

科技资讯 wangxiao 2分钟前 1次浏览 0个评论

概述

在服务消费者端的dubbo:reference标签中,有一个属性check,它是一个服务治理类的属性,其作用是在启动服务消费者应用时,检查引用的服务,即interface属性中指定的服务,在注册中心是否存在。check属性值默认为true,即启动时将对服务进行检查;也可以设置为false,忽略检查操作。普通使用场景

check属性缺省使用dubbo:consumer标签的check属性值,默认为true,即在启动服务消费者应用时进行检查。如果服务还未注册到注册中心或不存在,此时应用将报错而无法启动。

从服务治理的角度看,它是一个非常有用的属性,可以在应用向用户提供服务前及早发现问题,确保服务可用,一般情况下并不需要特别去配置,默认开启服务检查。循环消费场景

但有一些特殊情况除外,例如服务出现循环消费的场景,简单来讲,就是应用A和应用B分别使用了对方提供的服务。由于服务检查机制,产生了服务循环依赖,导致任何一方都没有办法启动。如不进行架构设计级别的调整,要解决服务循环依赖,必须将其中一方的服务检查关闭,然后先于另一方启动。

比如某个教育培训机构,将原有平台改造为微服务架构的过程中,用户服务发布在原有的个人中心 ,订单服务发布在运营平台。在个人中心查看个人购买的课程时需要调用运营平台的订单服务,在运营平台查看订单详情时需要调用个人中心用户服务。运营平台和个人中心互为对方的服务提供者和消费者。

运营平台配置

个人中心配置

此时便形成了服务的循环消费。如果不将个人中心或运营平台其中一方的服务检查关闭,两个应用都将无法启动。比如关闭运营平台用户服务userService的检查后,便可依次启动运营平台和个人中心。当然,也可以粗暴的做法就是两个平台都关闭服务检查即可。

#java开发工程师# #架构师# #诗和远方#

Dubbo高级特性应用之关闭服务检查

学习工作之余,一起看看诗和远方:白云山摩星岭的日落


本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Dubbo高级特性应用之关闭服务检查
喜欢 (0)
[wave460@126.com]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址