Ich muss eine erstellte/offene LDAP-Verbindung speichern, sodass mehrere Modelle, Ansichten usw. eine einzelne Verbindung wiederverwenden können, anstatt jedes Mal eine neue Verbindung zu erstellen. Diese Verbindung sollte offen sein, wenn sie während einer Anfrage zuerst benötigt wird, und geschlossen, wenn eine Antwort gesendet wird (das Erzeugen der Seite wurde beendet). Die Verbindung sollte nicht zwischen verschiedenen Anfragen/Antworten geteilt werden.Speichern und Zugreifen auf Anfrage-Antwort-Wide-Objekt
Wie ist es zu machen? Wo kann die Verbindung gespeichert werden und wie kann sie schließlich geschlossen werden?
Ein bisschen mehr Info. Als zusätzliche Informationsquelle verwende ich LDAP-Verbindungen. LDAP-Daten enthalten Details, die ich nicht in der Datenbank speichern kann (Redundanz-/Konsistenzgründe), z. MS Exchange Mailing Gruppen. Ich benötige möglicherweise einige LDAP-Daten an mehreren Punkten, verschiedene Objekte/Instanzen sollten während der Antwortgenerierung darauf zugreifen.
Gute Idee, ich habe der Verwendung von Middleware nicht gedacht:) Die Verwendung von Thread Local passt jedoch nicht zu den Konzepten unserer Software, daher werde ich etwas länger warten, bevor ich akzeptiere. – Art
Die einzige Alternative, die ich zur Verwendung von Thread-Local (oder einer Variante davon) kenne, ist die Speicherung von Informationen zum Request-Objekt. Der Nachteil dieses Ansatzes ist jedoch, dass Sie das Request-Objekt dann an jede Funktion übergeben müssen, die die ldap-Verbindung benötigt - was je nach Ihren Anforderungen und der Architektur sehr schwer sein kann. –