7

我使用 erlang 作为服务之间的桥梁,我想知道人们对处理断开的连接有什么建议?

我从本地文件中获取输入并将它们传送到 AMQP,可以想象 AMQP 代理可能会出现故障。对于这种情况,我想继续重试连接到 AMQP 服务器,但我不想将 CPU 与这些连接尝试挂钩。我倾向于在 AMQP 代码的重新启动中休眠。那'hack'不会本质上绕过快速失败并让erlang处理它的目的吗?更一般地说,是否应该使用 erlang 主管行为来处理断开的连接?

4

1 回答 1

3

我认为编写自己的语义来自己处理与外部服务器的连接是合理的。主管最适合处理您自己的进程树中的崩溃/锁定/其他不健康的进程,而不是重新连接到外部服务。

您的进程是在与 AMQP 代理相同的进程树中通过管道传输本地文件,还是一个单独的服务?

于 2010-06-06T04:48:09.517 回答