J'utilise erlang comme un pont entre les services et je me demandais quels conseils les gens avaient pour gérer les connexions au sol?Erlang Supervisor Stratégie pour redémarrer les connexions aux hôtes à terre
Je prends les entrées des fichiers locaux et les achemine vers AMQP et il est concevable que le courtier AMQP puisse descendre. Pour ce cas, je voudrais continuer à essayer de me connecter au serveur AMQP mais je ne veux pas attacher le CPU avec ces tentatives de connexions. Mon envie est de mettre un sommeil dans le redémarrage du code AMQP. Ce «piratage» ne contournerait-il pas essentiellement le but d'échouer rapidement et de laisser Erlang le gérer? Plus généralement, le comportement du superviseur erlang devrait-il être utilisé pour gérer les connexions au sol?
Je suis d'accord. Peut-être que les superviseurs ne devraient pas jouer dans la logique métier, ils sont juste là pour gérer les processus morts et maintenir la cohérence (one_for_all, one_for_one, etc.). Et oui, le piper de fichiers et le processus client AMQP sont des processus distincts. Le erlang-amqp-client crée un processus pour chaque connexion (ou est-ce le canal?), Maintenant je dois juste le gérer en train de mourir. Beaucoup à apprendre! – xrl