【问题标题】:What to use as a queue between API and Backend在 API 和后端之间使用什么作为队列
【发布时间】:2020-04-08 15:39:23
【问题描述】:

我有一个具有 .NET Core WebAPI 和 .NET Core 控制台应用程序的应用程序。两者都需要访问队列(包含消息)来处理它们或存储新消息。

队列项应该有一个状态。

通常,WebAPI 会将新消息存储在队列中,但也可以从队列中读取消息。 后端将从队列中获取消息并对每条消息进行大量处理并更改队列项的状态。

  • 我应该使用什么作为队列?
  • 将数据库用作队列是个好主意吗?

我不想使用 RabbitMQ 或 MSMQ。

谢谢!

【问题讨论】:

  • 如果需要,您可以构建自己的数据库驱动的排队系统,但我认为没有理由重新发明轮子。既然可以使用已有的东西,为什么还要构建自己的 RabbitMQ 或 MSMQ 版本?

标签: .net database .net-core architecture queue


【解决方案1】:

我应该使用什么作为队列?

这取决于您的要求。现在有很多消息队列可用。 我提到了Nats,他是云原生计算基金会的成员,并且部署简单。但是如果没有明确的要求,就无法做出合适的软件选择。

将数据库用作队列是个好主意吗?

一点也不。数据库不是消息队列。也许您不需要一个消息队列,而只需要一个存储数据并稍后获取它们的地方?

This 是 AWS 定义消息队列的方式。

我不想使用 RabbitMQ 或 MSMQ。

我想知道为什么这些不适合你...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-19
    • 2020-07-13
    • 2017-01-08
    • 2023-03-28
    • 1970-01-01
    • 2011-01-29
    • 2023-03-16
    • 1970-01-01
    相关资源
    最近更新 更多