首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Erlang死信队列

Erlang死信队列
EN

Stack Overflow用户
提问于 2015-11-03 09:15:17
回答 1查看 220关注 0票数 1

假设我的Erlang应用程序从外部接收一条重要消息(例如,通过公开的API端点)。由于应用程序中的错误或格式不正确的消息,处理消息的过程会崩溃。

那条信息会怎么样?我怎样才能影响信息的发生呢?在进程邮箱中等待的其他消息会发生什么呢?我是否必须引入一个进程层次结构,以确保没有丢失消息?

在Erlang有类似于Akka死信队列的东西吗?假设我希望稍后处理消息--要么修复消息,要么修复应用程序本身的错误,然后重新运行消息处理。

我感到惊讶的是,关于这个话题的信息如此之少。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-03 11:01:20

没有信息,因为没有死信队列,如果应用程序在处理消息时崩溃,消息将被接收,为什么它会出现在死信队列上(如果存在的话)。

这样的队列将是一个主要的可伸缩性问题,没有多大用处(您将得到无法发送且完全脱离上下文的任意消息)。

如果您需要确保消息被处理,通常会使用一种方法在消息像gen_server调用那样被处理时得到回复。

如果您的消息如此重要,如果丢失将是一场灾难,您可能应该将其保存在外部DB中,因为否则如果您的计算机崩溃,所有正在传输的消息会发生什么变化?

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33495254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档