/ / Má Rails vytvoriť akékoľvek spojenie s bazénami na mysql? Je to jediný závitový dizajn? - mysql, ruby-on-rail, škálovateľnosť, cestujúci

Má Rails vytvoriť akékoľvek spojenie bazénov na mysql? Je to jediný závitový dizajn? - mysql, ruby-on-rail, škálovateľnosť, cestujúci

Ako sú pripojenia k mysql spracované v Rails 3?

Majú viac pripojení na web zdieľajú rovnaké mysql pripojenie, alebo to vziať spojenie z bazéne pripojenia a potom ho uvoľniť, akonáhle žiadosť uzavrie všetky pripojenia k mysql?

Ak existujú 10 serverov front-end, ktoré narazia na jeden server db, sú tu nejaké problémy?

Ja "používajúceho cestujúceho Fusion, ak to má vplyv na čokoľvek.

odpovede:

1 pre odpoveď č. 1

Doktor odpovede samy o sebe:

Pool združenia synchronizuje prístup vlákien k aobmedzený počet databázové pripojenia. Základná myšlienka je, že každé vlákno kontroluje a databázové pripojenie z bazénu, používa toto spojenie a kontroluje pripojenie späť. ConnectionPool je úplne bezpečné pre závit, a že pripojenie nemôže byť použité pri dvoch vláknach na v rovnakom čase, pokiaľ je správne dodržaná zmluva aplikácie ConnectionPool. Tiež sa budú zaobchádzať s prípadmi, v ktorých je viac vlákien ako pripojenia: ak boli všetky pripojenia odhlásené a vlákno Pokúša sa pripojenie k pokladni, napriek tomu bude ConnectionPool čakať kým niektoré ďalšie vlákno nekontroluje pripojenie.