Es gibt mehrere Lösungen:
- Registrieren Sie eine Redis-Verbindung lokal oder global
- verwenden Sie ein Prozessregister wie gproc
- Behalten Sie die PID der Verbindung im Ressourcenkontext der Webmaschine
- Verwenden Sie einen Verbindungspool wie Pooler oder Poolboy
- für den Fall, dass Sie Anfragen nicht in eine Warteschlange stellen möchten dispcount könnte passen
Edit:missverstandene Frage, erste Antwort unten:
Webmachine und eredis sind beide Erlang-Anwendungen, die den OTP-Prinzipien folgen. Wenn Ihre Anwendung OTP-konform ist, können Sie eredis zu den applications
hinzufügen in Ihrer .app
Datei wie folgt:
{application, awesome_app, [
{description, "My awesome app."},
{vsn, "0.0.1"},
{modules, []},
{registered, []},
{applications, [kernel, stdlib,
eredis,
webmachine]}
]}.
OTP-konforme Anwendungen verwenden Releases. Nachdem Sie eine Freigabe erstellt und Ihre Anwendung gestartet haben, werden die Anwendungen in applications
angezeigt wird vor Ihrer App gestartet.
Rebar ist Ihr Freund beim Erstellen und Generieren von Releases (mehr Informationen hier). Eine Alternative zur Bewehrung ist Sinan, das in diesem Artikel beschrieben wird.