Azure 逻辑应用程序 - 微服务之间的 HTTP 通信
Azure Logic Apps - HTTP communication between microservices
逻辑应用程序是否被视为微服务?如果是这样,是否从逻辑应用程序进行 HTTP API 调用,无论它是否使用 HTTP/Function/APIM 连接器,都不会违反微服务之间的直接 HTTP 通信?
If possible, never depend on synchronous communication (request/response) between multiple microservices, not even for queries. The goal of each microservice is to be autonomous and available to the client consumer, even if the other services that are part of the end-to-end application are down or unhealthy. If you think you need to make a call from one microservice to other microservices (like performing an HTTP request for a data query) in order to be able to provide a response to a client application, you have an architecture that will not be resilient when some microservices fail.
Moreover, having HTTP dependencies between microservices, like when creating long request/response cycles with HTTP request chains, as shown in the first part of the Figure 4-15, not only makes your microservices not autonomous but also their performance is impacted as soon as one of the services in that chain is not performing well.
是的,逻辑应用程序主要是基于 Http 的服务。是不是 'micro' 真的不重要,因为 'micro' 太抽象了,没有任何实际意义。它曾经是一个有用的营销术语,但它在科技时尚跑道上的巡演已经结束。所以,想都别想。 ;)
作者试图表达的意思是您应该避免在应用架构中链接依赖关系。 A 等待 B,B 等待 C,D 等待 E,等等......这是图形中的第一行。
相反,Basket 可以自行检查 Catalog,然后调用 Ordering,同时在后台检查 Inventory。你只有一层深而不是四层。
逻辑应用程序是否被视为微服务?如果是这样,是否从逻辑应用程序进行 HTTP API 调用,无论它是否使用 HTTP/Function/APIM 连接器,都不会违反微服务之间的直接 HTTP 通信?
If possible, never depend on synchronous communication (request/response) between multiple microservices, not even for queries. The goal of each microservice is to be autonomous and available to the client consumer, even if the other services that are part of the end-to-end application are down or unhealthy. If you think you need to make a call from one microservice to other microservices (like performing an HTTP request for a data query) in order to be able to provide a response to a client application, you have an architecture that will not be resilient when some microservices fail.
Moreover, having HTTP dependencies between microservices, like when creating long request/response cycles with HTTP request chains, as shown in the first part of the Figure 4-15, not only makes your microservices not autonomous but also their performance is impacted as soon as one of the services in that chain is not performing well.
是的,逻辑应用程序主要是基于 Http 的服务。是不是 'micro' 真的不重要,因为 'micro' 太抽象了,没有任何实际意义。它曾经是一个有用的营销术语,但它在科技时尚跑道上的巡演已经结束。所以,想都别想。 ;)
作者试图表达的意思是您应该避免在应用架构中链接依赖关系。 A 等待 B,B 等待 C,D 等待 E,等等......这是图形中的第一行。
相反,Basket 可以自行检查 Catalog,然后调用 Ordering,同时在后台检查 Inventory。你只有一层深而不是四层。