java - 微服务中的观察者模式

标签 java design-patterns microservices observer-pattern

目前我正在看一本叫《Head First Pattern Design》的书,其中有一种设计模式叫:观察者模式,像这样:https://www.tutorialspoint.com/design_pattern/observer_pattern.htm

当我阅读该设计模式时,我感觉目前我们经常使用队列系统在每个微服务之间发布和订阅任务。感觉观察者模式目前不太常用。 如果我说得不对,请纠正我,如果能提供一些在微服务中使用观察者模式的例子那就太好了!

最佳答案

我认为 Atom Feed 正是您在微服务级别上寻找的东西

https://martinfowler.com/bliki/AtomFeeds.html

我们使用此模式在我们的域中分发 DomainEvents。其他服务订阅此接口(interface),并在提供服务发布 DomainEvent 后立即收到通知。这工作得很好,并且不包含轮询或类似的东西。

我们在 .net 中编码,因此第一次搜索时,这似乎是有前途的 Java 实现:

https://github.com/rometools/rome

或者 C# 的操作方法

https://learn.microsoft.com/en-gb/dotnet/framework/wcf/feature-details/how-to-create-a-basic-atom-feed

关于java - 微服务中的观察者模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50634072/

相关文章:

java - 如何设置 Canvas 大小?

java - 是否可以使用 JMX 在一个中央 MBean 服务器中注册或显示来自不同 VM 的 MBean?

c++ - 如何在不生成大量测试客户端应用程序的情况下切换元素和容器类型以进行基准测试?

python - 如何使用python从微服务1调用微服务2?

java - 如何关闭 dropwizard 应用程序?

spring-boot - 我们如何在pcf中为微服务配置API网关、服务发现?

java - 动态添加新的maven依赖?

java - 生产者/消费者死锁原因及调试

jakarta-ee - EJB 无状态初始化模式

java - 基于请求标识符的客户端请求工厂