How should communication between microservices and the API Gateway happen in a microservices architecture?
up vote
0
down vote
favorite
In the case of developing a microservices-based application, I understand that the API Gateway should be able to support synchronous as well as asynchronous calls to other microservices.
Based on my understanding, synchronous calls can happen over HTTP, while asynchronous operations can take place using a Service Bus. My team has a concern over having the API Gateway be aware of the microservices it calls or more specifically the Endpoints it has to call per business operation.
We thought that we should use the Service Bus for both types of communication (synchronous and asynchronous) since we would separate that knowledge into the Service Bus and the API Gateway would no longer know about the endpoints it has to call. Instead, it on sends messages over the Service Bus and it's the responsibility of the microservices to listen to those messages.
However, we don't know for sure if we would be able to implement synchronous-like communication over the Service Bus. Meaning, we don't know if the API Gateway can await a response to a certain message it sends on the Service Bus.
Is there any way this can be achieved?
Also, if there's any misconception you detect in my understanding of how communication should happen please tell me about it as I'm fairly new to this architecture.
Thanks in advance.
microservices servicebus api-gateway
add a comment |
up vote
0
down vote
favorite
In the case of developing a microservices-based application, I understand that the API Gateway should be able to support synchronous as well as asynchronous calls to other microservices.
Based on my understanding, synchronous calls can happen over HTTP, while asynchronous operations can take place using a Service Bus. My team has a concern over having the API Gateway be aware of the microservices it calls or more specifically the Endpoints it has to call per business operation.
We thought that we should use the Service Bus for both types of communication (synchronous and asynchronous) since we would separate that knowledge into the Service Bus and the API Gateway would no longer know about the endpoints it has to call. Instead, it on sends messages over the Service Bus and it's the responsibility of the microservices to listen to those messages.
However, we don't know for sure if we would be able to implement synchronous-like communication over the Service Bus. Meaning, we don't know if the API Gateway can await a response to a certain message it sends on the Service Bus.
Is there any way this can be achieved?
Also, if there's any misconception you detect in my understanding of how communication should happen please tell me about it as I'm fairly new to this architecture.
Thanks in advance.
microservices servicebus api-gateway
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
In the case of developing a microservices-based application, I understand that the API Gateway should be able to support synchronous as well as asynchronous calls to other microservices.
Based on my understanding, synchronous calls can happen over HTTP, while asynchronous operations can take place using a Service Bus. My team has a concern over having the API Gateway be aware of the microservices it calls or more specifically the Endpoints it has to call per business operation.
We thought that we should use the Service Bus for both types of communication (synchronous and asynchronous) since we would separate that knowledge into the Service Bus and the API Gateway would no longer know about the endpoints it has to call. Instead, it on sends messages over the Service Bus and it's the responsibility of the microservices to listen to those messages.
However, we don't know for sure if we would be able to implement synchronous-like communication over the Service Bus. Meaning, we don't know if the API Gateway can await a response to a certain message it sends on the Service Bus.
Is there any way this can be achieved?
Also, if there's any misconception you detect in my understanding of how communication should happen please tell me about it as I'm fairly new to this architecture.
Thanks in advance.
microservices servicebus api-gateway
In the case of developing a microservices-based application, I understand that the API Gateway should be able to support synchronous as well as asynchronous calls to other microservices.
Based on my understanding, synchronous calls can happen over HTTP, while asynchronous operations can take place using a Service Bus. My team has a concern over having the API Gateway be aware of the microservices it calls or more specifically the Endpoints it has to call per business operation.
We thought that we should use the Service Bus for both types of communication (synchronous and asynchronous) since we would separate that knowledge into the Service Bus and the API Gateway would no longer know about the endpoints it has to call. Instead, it on sends messages over the Service Bus and it's the responsibility of the microservices to listen to those messages.
However, we don't know for sure if we would be able to implement synchronous-like communication over the Service Bus. Meaning, we don't know if the API Gateway can await a response to a certain message it sends on the Service Bus.
Is there any way this can be achieved?
Also, if there's any misconception you detect in my understanding of how communication should happen please tell me about it as I'm fairly new to this architecture.
Thanks in advance.
microservices servicebus api-gateway
microservices servicebus api-gateway
asked Nov 19 at 11:06
Kenchi
55111
55111
add a comment |
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53373293%2fhow-should-communication-between-microservices-and-the-api-gateway-happen-in-a-m%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown