2

我正处于将 ac#.net 单体应用程序迁移到 node.js 的计划阶段。我想为这个应用程序实现事件驱动的微服务架构,使用 seneca.js 和 docker 将每个微服务分离到其自己的容器中,该容器托管在 aws elastic beanstalk 上。从我所阅读的内容和建议来看,这似乎是目前为止的方法。

这是我感到困惑的地方,在查看 seneca.js 文档时,我没有看到进程外通信是如何发生的。

特别是,如果我想允许多个客户端订阅同一个事件,我应该将 rabbitmq 与 seneca.js 一起使用,因为有时多个微服务必须为特定事件执行操作?在走这条路时,我将如何处理其中一个订阅者失败并需要再次运行的情况?似乎这个事件只需要为这个微服务而不是其他微服务再次运行。

此外,在使用 seneca.js 时,我如何允许为每个微服务公开一个 rest api,以允许客户端使用这种方法访问其内部数据库和数据?

如果我在这方面的任何方面不正确,请告诉我。

4

0 回答 0