Pregunta

Estoy usando Erlang como un puente entre los servicios y me preguntaba qué consejo tenía la gente para manejar conexiones caídas.

Estoy tomando la opinión de los archivos locales y los llevo a AMQP y es concebible que el corredor de AMQP pueda caer. Para ese caso, me gustaría volver a intentar para conectarme al servidor AMQP, pero no quiero fijar la CPU con esos intentos de conexiones. Mi inclinación es poner un sueño en el reinicio del código AMQP. ¿No podría eso 'piratear' esencialmente el propósito de fallar rápidamente y dejar que Erlang lo maneje? En términos más generales, ¿debería usarse el comportamiento del supervisor de Erlang para manejar las conexiones caídas?

¿Fue útil?

Solución

Creo que es razonable codificar su propia semántica para manejar las conexiones con un servidor externo usted mismo. Los supervisores son los más adecuados para manejar procesos bloqueados/bloqueados/de lo contrario en su propio árbol de proceso, no reconexiones a un servicio externo.

¿Es su proceso que tuve los archivos locales en el mismo árbol de proceso que el corredor de AMQP o es un servicio separado?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top