java架构师指南:Spring Cloud如何给客户端提高服务接口

    今天,我将与您讨论使用SpringCloud进行微服务架构设计时如何设计异常处理机制。我们知道,在设计微服务架构时,微服务通常不可避免地在内部和外部提供相应的功能服务接口。外部提供的服务...

    今天,我将与您讨论使用SpringCloud进行微服务架构设计时如何设计异常处理机制。我们知道,在设计微服务架构时,微服务通常不可避免地在内部和外部提供相应的功能服务接口。外部提供的服务接口将通过服务网关(例如Zuul提供的apiGateway)向公共网络提供服务,例如怎样提供给App客户端的用户登录和注册服务接口。

attachments-2020-10-UxtL1RZD5f7d6a868a9e8.png

    面向内部的服务接口是在拆分微服务后由每个微服务系统的边界定界引起的功能逻辑的分散化,微服务需要在彼此之间提供内部调用接口以实现完整的功能逻辑,这是一种在先前的单个应用程序中,本机代码接口调用的面向服务的升级拆分。例如,在团购系统中,从下订单到完成付款,交易系统需要在调用订单系统完成订单后调用支付系统,以完成下单的过程。此时,由于交易系统,订单系统和支付系统是三种不同的微服务,因此为了完成此用户订单,在App调用交易系统提供的外部订单界面后,交易系统将通过内部服务调用呼叫订单系统和支付系统以完成整个交易过程。

    这里需要说明的是,在基于SpringCloud的微服务框架中,所有服务都是通过服务注册和通过服务中间件(例如consul或eureka)进行发现来实现的。稍后进行服务调用,但是将通过外部服务接口,将暴露网关服务,并在服务网关处屏蔽面向内部的服务接口,以避免直接暴露于公共网络。内部微服务之间的调用仍可以直接通过领事或eureka进行服务发现调用。两者不冲突,但是外部客户端调用服务网关,并且服务网关通过领事专门路由到相应的微服务接口。通过consul或者eureka发现服务后直接进行调用。

推荐阅读:《java架构师指南》架构师需要掌握的知识结构有哪些

  • 发表于 2020-10-07 15:17
  • 阅读 ( 315 )
  • 分类:技术干货

0 条评论

请先 登录 后评论
JAVA Q&A
JAVA Q&A

173 篇文章

作家榜 »

  1. JAVA Q&A 173 文章
  2. 江南 1 文章
  3. 伯乐 0 文章
  4. 孤存 0 文章
  5. q21164340 0 文章
  6. 赫敏12 0 文章
  7. 子牙 0 文章
  8. 赫敏 0 文章