/ / Spojenie s databázovým serverom mysql z aplikačného servera django - mysql, django, pgbouncer

Spojenie pripojenia k databázovému serveru mysql z aplikačného servera django - mysql, django, pgbouncer

Navrhujem backend mojej aplikácie ios. Backend má samostatný databázový a aplikačný server s mysql a django oddelene v rôznych strojoch. Doteraz som jednoducho pripojil aplikačný server k môjmu databázovému serveru: zmenil som databázu hostiteľa v nastaveniach aplikačného servera tak, aby odkazoval na remore databázového servera a vytvoril nový vzdialený hostiteľ v konfiguračných súboroch databázového servera, ktorý umožňuje vzdialenému aplikačnému serveru prístup k databáz. Všetko funguje dobre a ja som sa rozhodol ísť s týmto zariadením na výrobu. Potom, keď som čítal Instagram inžiniersky blog, videl som ich spomenúť "Pgbouncer" na združenie pripojenia k ich postgresql databázový server. Aká je potreba niečoho podobného? Má to niečo spoločné s výkonom, alebo je to výrobný prístup priateľský k používaniu niečoho podobného pre komunikáciu medzi databázou a aplikačným serverom. Je môj všeobecný prístup spomenutý príliš amatérsky?

odpovede:

0 pre odpoveď č. 1

Váš prístup nie je vôbec amatér. Účelom vyhadzovača vo vašom prípade by bolo odstrániť čas spojenia, ktorý sa stane pri každej žiadosti, ktorú django spracováva. Napríklad, na Heroku, ktorá je umiestnená na serveroch AWS, by to mohlo vyčerpať 40-50ms každej žiadosti.

Teraz, ak by ste mali nastavenie master / slave alebo niečo podobné, pool pre spojenie by vám tiež poskytol funkciu prepínania zlyhania (len príklad)