在微服务架构中,有事件(EventBus等)和HTTP请求(API Gateway) 两种方式调用service。
请问一下:
1.事件和HTTP 请求有什么区别?
2.有了HTTP请求,为何还需要事件呢?
在微服务架构中,有事件(EventBus等)和HTTP请求(API Gateway) 两种方式调用service。
请问一下:
1.事件和HTTP 请求有什么区别?
2.有了HTTP请求,为何还需要事件呢?
3 回答254 阅读✓ 已解决
2 回答631 阅读
2 回答510 阅读
1 回答481 阅读
他俩可以认为没有什么直接的关系。
作为Web服务对外暴露
HTTP API
,这个很容易理解。而
EventBus
消息总线,他的目的是进行服务内部的消息(广播)通信,可以达到解耦的目的。基本都会使用MQ消息队列来进行处理。比如:用户服务,发生了
用户注册
事件,就可发送如下广播一些对注册事件感兴趣的服务,就可订阅该事件。比如邮件服务,当有用户注册时需要发送欢迎邮件,账户服务需要初始化账户等。
当然也可通过RPC(HTTP)的方式进行调用触发相应的动作,但会增加复杂性,同时也会增加系统间的耦合性。
总之,消息总线可以认为是一种思想,或者一种设计模式?解决某一类问题的方案。