PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Деактивиране на групирането на връзки в Rails за използване на PgBouncer

TLDR; не променяйте нищо

Обединяването в rails е различно от обединяването в PGBouncer. Пулът за връзки на rails е група връзки, достъпни за всяка нишка в рамките на този процес, обикновено само 1. Всяка връзка във вашия пул на rails ще има връзка към вашата база данни на postgres или PGBouncer, ако това се намира пред postgres. В едно голямо rails приложение ще изпълнявате множество rails процеси на всеки сървър и множество сървъри зад балансиращо натоварване. Нещо подобно:

Без PGBouncer всяка връзка с postgres създава нов postgres процес. В мащаб ще искате да ограничите броя на postgres процесите, които се изпълняват, така че да не използвате максимално CPU и памет. PGBouncer обединява връзки от всичките ви релсови пулове във всички процеси и всички сървъри и ефективно превключва между тях.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Заявка за булево поле със sqlalchemy

  2. Опростете вложен случай, когато израз

  3. как да изчислим само дни между две дати в заявка на postgres sql.

  4. Клауза IN с NULL или IS NULL

  5. Проблем с паралелността с psycopg2, Redshift и unittest