1、有一个服务(Dept-Provider)部门微服务
2、部门微服务既是一个提供者,也需要调用基础服务查询一下网点公用的信息。
3、假如提供网点服务的提供者不能正常对外提供服务,但是我们程序又没有进行异常的try,catch,这样就会导致我们的部门微服务也不能对外提供服务。
4、正确的处理方式应该是try,catch此异常:try { basicSite = this.basicSiteService.querySiteBySiteId(new BigDecimal(finEwb.getSendSiteId()).longValue()); } catch (Exception e) { logger.error("调用网点服务错误: "+e); }这样即使网点提供者有问题也不会影响调用此服务的提供者
5、调用网点服务查询网点信息成功。
6、dubbo没有提供所谓的熔断处理机制,但是在spring cloud中提供了服务之间互相调用出现异常的熔断处理机制。
7、作者也提供了spring clound如何处理服务之间相互调用异常处理的熔断文章。