Verbindung wird unterbrochen

Hallo,

ich arbeite an einem Plugin für Discourse namens Disraptor, das als eine Art Reverse-Proxy fungiert, um die Einbettung einer anderen Website in den Discourse-Kontext zu ermöglichen.

Die Website, die auf diese Weise eingebettet werden soll, benötigt derzeit sehr lange, um bestimmte Routen zu bedienen. Daher wird nach 30 Sekunden eine gerenderte „not_found"-Antwort erhalten.

Mir ist bewusst, dass der Standard-Timeout für Unicorn-Worker in der Produktionsumgebung 30 Sekunden beträgt. Ich habe daher begonnen, diesen Timeout zu erhöhen, indem ich die Unicorn-Konfiguration angepasst habe. Beim Blick auf das Unicorn-Fehlerprotokoll kann ich bestätigen, dass der Unicorn-Worker nun später getötet wird, aber dennoch wird die „not_found"-Vorlage gerendert (bevor der Worker beendet wird).

Nach weiterem Suchen konnte ich keinen Hinweis darauf finden, woher dieser 30-Sekunden-Timeout stammt oder wo er festgelegt wird. Obwohl die lange Bearbeitungszeit an sich ein Problem ist und wahrscheinlich in Zukunft behoben wird, wäre es derzeit perfekt, wenn es eine Möglichkeit gäbe, diesen Timeout zu ändern.

Hat jemand eine Idee, wie das funktionieren könnte?

Vielen Dank im Voraus!

Ich glaube, das Unicorn-Timeout von 30 Sekunden stammt von hier: discourse/config/unicorn.conf.rb at main · discourse/discourse · GitHub

Es wäre schön, wenn es eine Möglichkeit gäbe, es z. B. durch ENV[“UNICORN_TIMEOUT”] in der Produktion zu ändern.