Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was ist die beste Lösung für das Pooling von Datenbankverbindungen in Python?

In MySQL?

Ich würde sagen, kümmern Sie sich nicht um das Verbindungspooling. Sie sind oft eine Quelle von Problemen und bringen Ihnen bei MySQL nicht den Performance-Vorteil, den Sie sich erhoffen. Dieser Weg kann – politisch – sehr mühsam sein, da es in diesem Bereich so viele Best Practices gibt, die mit der Hand winken, und Lehrbuchworte über die Vorteile des Connection Pooling.

Verbindungspools sind einfach eine Brücke zwischen der Post-Web-Ära zustandsloser Anwendungen (z. B. HTTP-Protokoll) und der Vor-Web-Ära zustandsbehafteter, langlebiger Stapelverarbeitungsanwendungen. Da Verbindungen in Pre-Web-Datenbanken sehr teuer waren (da sich früher niemand zu sehr darum kümmerte, wie lange eine Verbindung zum Aufbau dauerte), entwickelten Post-Web-Anwendungen dieses Verbindungspoolschema, damit nicht jeder Treffer diesen enormen Verarbeitungsaufwand verursachte auf dem RDBMS.

Da MySQL eher ein RDBMS der Web-Ära ist, sind Verbindungen extrem leicht und schnell. Ich habe viele hochvolumige Webanwendungen geschrieben, die überhaupt keinen Verbindungspool für MySQL verwenden.

Dies ist eine Komplikation, auf die Sie möglicherweise verzichten können, solange es kein politisches Hindernis zu überwinden gilt.