ืืื"ื ืฉืื, ืื ืืจืื ืืืจืืืื ืืกืคืจ ืืื ืืืฆื ืื ืืงืื ืืืฉืืื ืืช ืืืืืืช ืงื ื ืืืืื ืฉื PgBouncer ืืขืช ืชืื ืื ืืืืจ ืืืืืืจืื
ืืืืื:
ืฉืืื ืืืืื! ืฉืื ืืื ืื ืืจื.
ื-Yandex, ืื ื ืืคืชื ืืกืื ื ืชืื ืื ืืงืื ืคืชืื. ืืืืื ืืฉ ืื ื ื ืืฉื ืขื ืืืืืจื ืืจืืื.
ืื ืืชื ืืืืข ืืื ืืืชืงืฉืจ ื-connection pooler ืืจืืกืืช, ืื ืชืืื ืื. ืื ื ืืืืช ืจืืฆื ืืืฆืื ืืื ื ืืื ื ืืื ืฉืฆืจืื ืืืชืืกืก ืืกืคืจืืช ืืืื ืืช.
ืื ืืฉื ืื ืืกืืื, ืื ืืืจืื ืืกืื ื ืชืื ืื ืืืืจ ืืืืืืจืื ืืืื ื ืืืคืืื ืื ืฆืจืื ืืืขืช ืขืืื. ืืืืื, ืืฉ ืืื ืืืืจืืช ืืื ืืงืื, ืืื ื-Postgres ืื ืื ืขืืื ืืื. ืืืืงืืื (ื-HighLoad++ 2019) ืืฉ ืืืืื ืฉื ื ืืงืืืื ืกืืืงืืืืืื ืขื ืืืืจืช ืฉืืืืชืืช ื-Postgres. ืืืคื ืืื ืชื, ืืืืขื ืืืื ืื ืฉืื ืฉืืืจ ืืืืืจื ืืช ืืฉืืืืชืืช ืฉืืื ืืฆืืจื ืืืฉืืืช, ืืืื ืื ืฉืื ืฉื ืืฆืืื ืืคื ื ืืขืืืช ืืขืจืืช ื ืืืจืืช ืืืชืจ ืืงืฉืืจืืช ืืจืฉืช ืืื ืืฆืื ืืืฉืืืื. ืืืืงืืืืช ืืกืืืืื ืื ืืืื ืืืืืช ืื ืงืฉื ืืืืื ืฉืืืขืืืช ืืื ื ืืจืืจืืช.
ื-Yandex ืืฉ Postgres. ืฉืืจืืชื Yandex ืจืืื ืืืื ื-Yandex.Cloud. ืืืฉ ืื ื ืืื ืคืื-ืืืื ืฉื ื ืชืื ืื ืฉืืืืฆืจืื ืืคืืืช ืืืืืื ืืงืฉืืช ืืฉื ืืื ื-Postgres.
ืืื ืื ื ืืกืคืงืื ืืฉืืื ืื ืกืื ืืจืื ืขืืืจ ืื ืืฉืืจืืชืื - ืืื ืืฆืืืช ืืจืืฉื ืืจืืฉื ืฉื ืืฆืืืช, ืฉื ื ืืขืชืงืื ืืจืืืืื (ืกืื ืืจืื ื ืื-ืกืื ืืจืื ื), ืืืืื, ืงื ื ืืืื ืฉื ืืงืฉืืช ืงืจืืื ืขื ืืขืชืง.
ืื ืฆืืืช ืืฉืืื ืืื Postgres, ืฉืขืืื, ืื ืืกืฃ ื-Postgres ืืืขืจืืืช ืื ืืืืจ, ืืืชืงื ืื ืืืืจ ืืืืืจืื. ืืืืืจ ืคืืืจ ืืฉืืฉ ืืืืืืจ ืืืืืจืชื ืืขืืงืจืืช.
ืืื ืืืืจื ืืขืืงืจืืช ืฉื ืืืืจ ืืืืืจืื?
Postgres ืืืืฆืช ืืืื ืชืืืื ืืขืืืื ืขื ืืกื ื ืชืื ืื. ืื ืืืืจ ืฉืืืืืจ ืืื ืืื ืชืืืื ืืื, ืงืฆื ืืืืจื ืฉื Postgres ืืื. ืืืงืฆื ืืืืืจื ืืื ืืฉ ืืจืื ืืืืื ืื ืฉืื ืื, ืฉืื ืืงืจ ืืขืฉืืช ืืืชื ืฉืื ืื ืขืืืจ ืืืืืจืื ืฉืื ืื.
ืื ืืกืฃ, ืืงืื Postgres ืืฉ ืืขืจื ืฉื ืงืจื procArray. ืืื ืืืื ื ืชืื ืื ืืกืืกืืื ืขื ืืืืืจื ืจืฉืช. ืืืืขื ืืื ืืืืืืจืืชืืื ืืขืืืื procArray ืืฉ ืืืจืืืืช ืืื ืืจืืช; ืื ืคืืขืืื ืขื ืื ืืขืจื ืืืืืจื ืืจืฉืช. ืื ืืืืืจ ืื ืืืืจ, ืืื ืขื ืืืชืจ ืืืืืจื ืจืฉืช ื ืื ืกืื ืืืืจืื ืงืฆืช ืืืชืจ ืืงืจืื. ืืืฉืืืืจืื ืงืฆืช ืืืชืจ ืืงืจืื, ืืชื ืืืื ืืกืืคื ืฉื ืืืจ ืืฉืื ืืืืจ ืืืื ืืืื ืขืืืจ ืืจืื ืืืืืจื ืจืฉืช.
ืืฉื ื 3 ืืืฉืืช ืืคืฉืจืืืช:
- ืืฆื ืืืืฉืื.
- ืืฆื ืฉื ืืกื ืื ืชืื ืื.
- ืืืื, ืืืืืจ ืื ืืื ื ืฉืืืืืื.
ืืจืืข ืืืื, ืืคืืืจ ืืืืื ื ื ืืฆื ืืขืช ืืคืืชืื. ืืืืจืื ืฉืื ื ื-PostgreSQL Professional ืขืืฉืื ืืืช ืืขืืงืจ. ืงืฉื ืืืืืช ืืชื ืื ืืืคืืข. ืืืืขืฉื, ืืฉ ืื ื ืฉื ื ืคืชืจืื ืืช ืืืืืจืช ืืืืจืืื. ืืื ืื ืืืืจ ืืฆื ืืืคืืืงืฆืื ืืืืืจ ืคืจืืงืกื.
ืืจืืื ืืฆื ืืืืฉืื ืืื ืืืจื ืืงืื ืืืืชืจ. ืืืืขื ืื ืื ืืื ืืืชืงื ืฉื ืืืงืื ืืกืคืงืื ืื ืืจื: ืืฆื ืืืืืื ื ืืืืืืืจืื ืฉืื ืืงืื ืืืื ืขืฉืจืืช ืืืืืจืื ืืืกื ืื ืชืื ืื.
ืืืขืื ืฉืืชืขืืจืจืช ืืื ืฉืืฉืื ืืกืืื ืืชื ืจืืฆื ืืืจืืื ืืช ื-backend, ืืชื ืจืืฆื ืืคืจืืก ืืืชื ืืืืื ืืช ืืืจืืืืืืืช ืจืืืช.
ืืื ืืชื ืืืื ืฉืืฉ ืื ืขืื ืืื ืืืืจื ืืืื ืืช, ืืื ืืจืืื ื ืชืื ืื. ืืืืฉืช ืืืืื ืฆื ืืืงืื ืืืืืื ืืืกืคืจืื ืืืืืื. ืืืืืืื ืื ื-10 ืืืืืจืื. ืื ืืงืฆื ืฉืืืื ืืขืืื ืืจืืื.
ืื ืื ืื ื ืืืืจืื ืขื ืคืจืืงืกื ืคืืืจืก, ืื ืืฉ ืฉื ื ืคืืืจืื ืฉืืืืืื ืืขืฉืืช ืืจืื ืืืจืื. ืื ืื ืจืง ืืจืืืื. ืื ืคืืืจืื + ืืืชืจ ืคืื ืงืฆืืื ืืืืช ืืื ืืื. ืึถื
ืืื, ืืืจืื ืืฆืขืจ, ืื ืืืื ืฆืจืืืื ืืช ืืคืื ืงืฆืืื ืืืืช ืื ืืกืคืช ืืื. ืืื ืืืืื ืืขืืืื ืฉ-poolers ืชืืืืื ืจืง ื-session pooling, ืืืืืจ ืืงืื ืืื ื ืื ืก, ืืงืื ืืื ืืืฆื ืืืกื ืื ืชืื ืื.
ืื ืื ืืืื ืืชืืื ืืืืจืืช ืฉืื ื, ืื ืื ืื ื ืืฉืชืืฉืื ื-PgBouncer, ืฉืืืืฉื ืืืืื ืขืกืงืืืช, ืืืืืจ ืืืืืจื ืฉืจืช ืืืชืืืื ืืืืืืจื ืืงืื ืจืง ืืืฉื ืืขืกืงื.
ืืืขืืืก ืืขืืืื ืฉืื ื, ืื ื ืืื. ืืื ืืฉ ืืื ืืขืืืช.
ืืืขืืืช ืืชืืืืืช ืืืฉืจ ืืชื ืจืืฆื ืืืืื ืืคืขืื, ืืืืืื ืฉืื ืืืืืืจืื ืื ืื ืกืื ืฉืื ืื ืืงืืืืื. ืืืื ืืืืขื ืขื ืืืืคืืง ืืืืืฉืื ืื ืืืคื ืืืืืช ืงืฉื ืืืชืจ ืืช ืืคืืืฉื.
ืืืืื ืฉืืชื ืืืื ืืืฉืชืืฉ application_name_add_host. ืืืื ืืจื ืืฆื ื-Bouncer ืืืืกืืฃ ืืชืืืช IP ื- application_name. ืืื application_name ืืืืืจ ืขื ืืื ืืืืืจ ื ืืกืฃ.
ืืืจืฃ ืื, ืืืื ืืงื ืืฆืืื ืืื ืืงืฉืืช ืืืืชืืืช, ืืืืื ืืงื ืืืืื ืืื ืืงืฉืืช ืฉืืกืืช ืืืกื ืื ืชืื ืื. ืืืืืื ืืื ืืื ืืืืืง ืืืชืงื ื ืฉื application_name, ืฉื ืืจืฉืช ืจืง ืืฆืืจื ืืขืงื, ืืื ืืื ืืื ื ืืื ืืืช ืืื.
ืื ืืกืฃ, ื-Bouncer ืื ื ืืชื ืืืืืื ืืืืจ ืืื, ืืืืืจ ืืช ืืกืคืจ ืืืืืจื ืืกื ืื ืชืื ืื ืืื ืืฉืชืืฉ ืกืคืฆืืคื, ืืื ืืกื ื ืชืื ืื ืกืคืฆืืคื.
ืืื ืื ืืืืื? ืืฉ ืื ืฉืืจืืช ืืขืื ืฉื ืืชื ื-C++ ืืืืคืฉืื ืืื ืฉืืจืืช ืงืื ืขื ืฆืืืช ืฉืื ืขืืฉื ืฉืื ืืืจ ื ืืจื ืขื ืืกื ืื ืชืื ืื, ืืื ืืืจืืืืจ ืฉืื ืืฉืชืืข. ืืื ืคืืชื 20 ืืืืืจืื ืืื ืืฉืืจ ืืืื. ืืคืืื ืืงืื ืฉืื ื ืืจืืื.
ืื ืื ื, ืืืืื, ืืชืื ื ืชืืงืื ืงืื ืขืืืจ Bouncer ืฉืืืกืืฃ ืืช ืืืืืจื ืืื, ืืืืืจ ืืืืืช ืืงืืืืช ืืืจืืื.
ื ืืชื ืืืื ืืขืฉืืช ืืืช ืืฆื Postgres, ืืืืืจ ืืืืืื ืืช ืืชืคืงืืืื ืืืกื ืื ืชืื ืื ืืืกืคืจ ืืืืืืจืื.
ืืื ืื ืืชื ืืืื ืืช ืืืืืืช ืืืืื ืืื ืืื ืื ืืืืืจืื ืืฉืจืช. PgBouncer ืื ืืืจืง ืฉืืืืช ืืืืืจ, ืืื ืชืืื ืืืืืจ ืืช ืืืชื ืืืืืข. ืืืชื ืื ืืืื ืืืืื: ืืืื ืืกืืกืื ืฉืื ืืฉืชื ืชื, ืืืื ืืกื ืื ืชืื ืื ืคืฉืื ืืื ืืืืืื, ืืืื ืืฉืื ืื ืืกืืจ. ืืื ืืื ืืืื ื. ืื ืื ื ืืชื ืืืงืื ืืคืขืื, ืื ืชืืข ืืืืข ืื ื ืืชื ืืืงืื ืืืชื.
ืืฉืื ืืกืืื ืืกืชืืืื ืขื ืืจืคื ืืืคืืืงืฆืื ืืจืืืื ืฉืืืคืืืงืฆืื ืื ืขืืืืช.
ืชืกืชืื ืืืขืื ืืจืื ืฉ-Bouncer ืืื ืืืื ืืืื. ืืืื ื ืงืืืช ืืคื ื ืืืื ืืฉืืจืืช. ืืชื ืืืื ืฉืืชืืื ื ืช ืืืจืืื ืืช ืืกืืก ืื ืชืื ืื ืืขืื ืฉื ื ืืืฆื, ืืืชื ืฆืจืื ืืืจืืื ืืช ืืืืืจ.
ืืืขื ื ืืืกืงื ื ืฉืื ืื ื ืฆืจืืืื ืขืื PgBouncers.
ืกืืจื ืชืืงื ืงืฆืช.
ืืื ืขืฉื ืืช ืื ืื ืฉื ืืชื ืืื ืืืขืืืช ืืกืคืจ ืกืืจื ืื ืขื ืืื ืฉืืืืฉ ืืืืจ ืืืฆืืืช ื-TCP. ืืืขืจืืช ืืืคืขืื ืืขืืืจื ืืืืืืืืช ืืืืืจื TCP ื ืื ืกืื ืืื ืืื ืืืืฆืขืืช round-robin.
ืื ืฉืงืืฃ ืืืงืืืืช, ืืืืืจ ื ืจืื ืฉืืฉ ืื Bouncer ืืื, ืืื ืืฉ ืื ืคืืฆืื ืฉื ืงืฉืจืื ืกืจืง ืืื Bouncers ืฉืคืืขืืื.
ืืืจืืข ืืกืืื ืืืื ืชืฉืืื ืื ืฉ-3 ืืฉืืืจืื ืืืื ืืืืืื ืื ืืื ืืช ืืืืื ืฉืื ื-100%. ืืชื ืฆืจืื ืื ืืขื ืกืืจื ืื. ืืื?
ืื ืืฉ ืื TLS. ืืฉ ืื ืืืืืจ ืืืฆืคื. ืืื ืชืกืื ืืช Postgres ืขื ืืืื TLS, ืชืืื ืฉืืกืคืจ ืืืืืืจืื ืฉื ืืฆืจื ืืืจื ืืืืขื ืฉื ื ืกืืจื ืืืื ืืฉืืืฆืคื ื ืืืคืขืืช, ืืืืืื ืฉืืืืฆืช ืืื ืฉื TLS ืฆืืจืืช ืืฉืืื CPU.
ืืืืืง ืืขืืืื ื ืืชื ืืจืืืช ืื ืืขื ืคืื ืงืฆืืืช ืงืจืืคืืืืจืคืืืช ืฉืืชืืฆืขืืช ืืืฉืจ ืืฉ ืื ืฉื ืืืืืจืื ื ืื ืกืื. ืืืืืื ืฉืืืจืืื ืฉืื ื ืืืื ืืขืืืจ ืืื ืืืืจื ืืืื ืืช, ืื ืฉื ืืืืืจืื ื ืื ืกืื ืืื ืืฆื ืืืคืืื ื ืืืื. ืืืืืจ, ืืกืืื ืืืฉืื ืืคืจืืืืจืื ืืืฉื ืื ืืื ืืืื, ืื ืืขืืืก ื ืฉืื ืืืจืื ื ืชืื ืื ืืืจ. ืืืื ืืืืื ืืืืื ืฉืืื ื-TLS ืืืืชื ืืืื.
ืืืกืคืจ ืืืื ืฉื ืืืืฆืืช ืื ืฉื TLS ืืืื ืืืจ ืื ืืืืื ืฉืืื ืืืื ืกืจ, ืืื ืืืืฆื ืื ืืช ืืืจืื. ืขืงื ืืืื ืืงืฆืื, ืื ืืืืืืจืื ืื ืื ืกืื ืขืืื ืืืคืื ืืื ืืืืก. ืื ืชื ืกื ืฉืื ืืืกืืก ืืื ืืืืื ืืงืกืคืื ื ืฆืืืื, ืื ืื ืืืืื ืฉืื ืืฉืื ืืื ืงืืืจื ืื.
ืื ื ืืืืื ื-16 PgBouncers ืฉืืืขื ืื 16 ืืืืืช ื-100%.
ืืืขื ื ืืืคื PgBouncer. ืืืื ืืชืฆืืจื ืืืืื ืืืืชืจ ืฉื ืืชื ืืืฉืื ืขื ืืขืืืก ืฉืื ื ืขื Bouncer. ื-Bouncers ืืืืฆืื ืืื ืฉืื ื ืืฉืืฉืื ืืืืืฆืช ืื ืฉื TCP, ื-Bouncers ืคื ืืืืื ืืฉืืฉืื ื-pooling ืืืืชื, ืืื ืื ืืคืฆื ืืืชืจ ืืื ืืืืืจืื ืืืฆืื ืืื.
ืืชืฆืืจื ืื, ืืคืขืื ืืืืฉ ืืืงื ืืคืฉืจืืช. ืืชื ืืืื ืืืคืขืื ืืืืฉ ืืช ืื 18 ืืฉืืืจืื ืืืื ืืื ืืืจ ืื. ืืื ืฉืืืจื ืขื ืชืฆืืจื ืืื ืืื ืื ืงืฉื. Sysadmins, DevOps ืืื ืฉืื ืฉืืืืช ืืืจืืื ืขื ืืฉืจืช ืืื ืื ืืืื ืืจืืฆืื ืืืื ืืืกืืืืจ ืืื.
ื ืจืื ืฉื ืืชื ืืงืื ืืช ืื ืืฉืืคืืจืื ืฉืื ื ืืงืื ืคืชืื, ืืื Bouncer ืื ื ืชืื ืืืื. ืืืืืื, ืืืืืืช ืืืคืขืื ืืกืคืจ PgBouncers ืขื ืคืืจื ืืื ืืืฆืขื ืืคื ื ืืืืฉ. ืืืืชื ืืงืฉืช ืืฉืืื ืขื ืชืืื ื ืื ืืคื ื ืืกืคืจ ืฉื ืื.
ืื ืืืืื ื ืืกืคืช. ื-Postgres, ืืชื ืืืื ืืืื ืืงืฉื ืืชืืืื ืขื ืืื ืฉืืืืช ืืกืื ืืืืืืจ ืืืจ ืืื ืืืืืช ืืืืชืจ. ืืื ืืืง ืืืืงืืืืช ืคืฉืื ืฉืืืืื ืืืคืืก TCP, ืืืืืจ ืื ืื ืชืงืื ืืช ืืืืืืจ ืืจืฉืช. ืื ืืขืฉื ืกืืจื? ืืื ืื ืืขืฉื ืืืื. ืืื ืชืืฉืื ืืืฆืข ืืช ืืืงืฉื. ืื ืงืืืืชื ืืกืคืจ ืขืฆืื ืฉื ืืืืืจืื ืฉืืฆืจื ืืกื ื ืชืื ืื ืขื ืืงืฉืืช ืงืื ืืช, ืื ืคืฉืื ื ืืชืืง ืืืืืืจ ื-Bouncer ืื ืืกืคืืง, ืขืืืื ืืืฉืืื ืื ืืช ืืืงืฉืืช ืืจืฆืืช ืืืกื ืื ืชืื ืื.
ืื ืชืืงื ืืืืขืื ืืื ืขืืืื ืื ืืืืื ืืืขืื ืืืจื ืฉื Bouncer.
ืืื ืืืขื ื ืืืกืงื ื ืฉืื ื ืืงืืงืื ื-pooler ืืืืืจืื ืืฉืื ื, ืืฉืจ ืืคืืชื, ืืชืืงื, ืฉืื ื ืืชื ืืชืงื ืืขืืืช ืืืืืจืืช ืืฉืืืืื ืืืื ืืืืืช ืจืืืื ืืืืื.
ืืืืจื ื ืจืืืื ืฉืจืฉืืจืื ืืืฉืืื ืืขืืงืจืืช. ืื ืื ื ืฆืจืืืื ืืืืืช ืืกืืืืื ืืืชืืืื ืืืื ืขื ืื ืืืืืจื ื-TLS ืื ืื ืกืื.
ืืฉื ืื, ืืืื ื ืฆืจืืืื ืืคืชื ืกืคืจืืื ื ืคืจืืช ืืฉื Machinarium, ืืฉืจ ื ืืขืื ืืชืืจ ืืช ืืฆืื ืืืืื ื ืฉื ืืืืืจ ืจืฉืช ืืงืื ืจืฆืืฃ. ืื ืชืกืชืื ืขื ืงืื ืืืงืืจ ืฉื libpq, ืชืจืื ืืื ืงืจืืืืช ืื ืืืจืืืืช ืฉืืืืืืช ืืืืืืจ ืื ืชืืฆืื ืืืืืื, "ืืชืงืฉืจ ืืื ืืืืืจ ืืืชืจ. ืืจืืข ืืฉ ืื IO ืืขืช ืขืชื, ืืื ืืฉื-IO ืืืขืื ืืืื ืื ืขืืืก ืขื ืืืขืื." ืืื ืชืื ืืช ืจื-ืฉืืืชืืช. ืชืงืฉืืจืช ืจืฉืช ืืชืืืจืช ืืืจื ืืื ืขื ืืื ืืืื ืช ืืืื ื. ืืจืื ืืืืื ืืื "ืื ืงืืืืชื ืืขืืจ ืืืชืจืช ืื ืืช ืืืืื N, ืขืืฉืื ืื ื ืืืื ื-N ืืชืื", "ืื ืฉืืืชื ืืืืืช SYNC, ืขืืฉืื ืื ื ืืืื ืืื ื ืขื ืืื ื ืชืื ืื ืฉื ืชืืฆืืืช." ืืชืืฆืื ืืื ืงืื ืงืฉื ืืืื, ืื ืืื ืืืื ืืืืืฆืื, ืืืืื ืืืืื ืืืืจ ืืกืจืืงืช ืงื. ืขืฉืื ื ืืืช ืื ืฉืืืงืื ืืืื ืช ืืฆื, ืืืชืื ืช ืืชืืจ ืืช ื ืชืื ืืืื ืืจืืงืฆืื ืืขืืงืจื ืืฆืืจื ืฉื ืงืื ืฆืืืื ืจืืื. ืจืง ืฉืืงืื ืืฆืืืื ืืื ืืชื ืฆืจืื ืืืื ืืก ืืงืืืืช ืฉืืื ืฆืจืื ืืืคืจืืข ืืจืฆืฃ ืืืืฆืืข ืขื ืืื ืืืชื ื ืื ืชืื ืื ืืืจืฉืช, ืืขืืจืช ืืงืฉืจ ืืืืฆืืข ืืงืืจืืืื ื ืืืจืช (ืฉืจืฉืืจ ืืจืืง). ืืืฉื ืื ืืืื ืืขืืืื ืฉืื ื ืจืืฉืืื ืืช ืื ืชืื ืืฆืคืื ืืืืชืจ ืืืืื ืืจืฆืฃ, ืืื ืืืกืืคืื ืื ืขื ืคืื.
ืืชืืฆืื ืืื, ืืฉ ืื ื ืฉืจืฉืืจ ืืื ืฉ-TCP ืืงืื ื-round-robin ืืขืืืจ ืืช ืืืืืจ ื-TPC ืืขืืืืื ืจืืื.
ืืืงืจื ืื, ืื ืืืืืจ ืืงืื ืคืืขื ืชืืื ืขื ืืขืื ืืื. ืืื ืืืคืฉืจ ืื ืืืคืื ืืืชื ืืืืืืืชื ืืืืืื.
ืืื ืืกืฃ, ืฉืืคืจื ื ืืขื ืืช ืืืกืืฃ ืืืืืืืช ืืงืื ืืช ืืืืืื ืืืช ืืืืื ืขื ืื ืช ืืืงื ืขื ืขืจืืืช ื-TCP ืฉื ืืืขืจืืช.
ืื ืืกืฃ, ืฉืืคืจื ื ืืช ืืืืื ืืขืกืงืืืช ืืืืื ืื ืฉ-Odyssey, ืืืฉืจ ืืื ืืืืืจืช, ืืืืื ืืฉืืื CANCEL ื-ROLLBACK ืืืงืจื ืฉื ืืฉื ืืืืืืจ ืืจืฉืช, ืืืืืจ ืื ืืฃ ืืื ืื ืืืชืื ืืืงืฉื, Odyssey ืืืื ืืืกื ืื ืชืื ืื ืื ืื ืกืืช ืืืื ืืช ืืืงืฉื ืฉืขืืืื ืืืืื ืืฉืืืื ืืงืจืื.
ืืืืืืช ืืืคืฉืจ, ืื ื ืฉืืืจืื ืขื ืงืฉืจืื ืืืืชื ืืงืื. ืื ืืื ืข ืืช ืืฆืืจื ืืืชืงืื ืืืืฉ ืืช application_name_add_host. ืื ืื ืืคืฉืจื, ืื ืื ืื ื ืื ืฆืจืืืื ืืืคืก ืื ืืกืฃ ืืช ืืคืจืืืจืื ืืืจืืฉืื ืืืืืื.
ืื ื ืคืืขืืื ืืืขื ืืืื ืืจืกืื ืฉื Yandex.Cloud. ืืื ืืชื ืืฉืชืืฉ ื-PostgreSQL ืื ืืื ืืืืชืงื ืื ืืืืจ ืืืืืจืื, ืืชื ืืืื ืืืฆืืจ ืฉืืคืื ืืืื ืืืคื ืืืฅ, ืืืืืจ ืืืฉืืืจ ืืืชื ื, ืื ืชืจืฆื, ืืืืฆืขืืช ืฉืืคืื ืืืื. Bouncer ืื ืืฉืืจืจ ืืช ืืจืืืช ืืฉืืคืื ืืืืืื ืืช ืืืืฅ.
ืืืื ืืืืื ืืืืืจืช ืฉืืคืื ืืืื.
ืื ืืกืฃ, ืืฉ ืื ื ืชืืืื ืืฉืืคืื ืคืืื ืืืคื ืืืฅ. ืืขื ื, ืืืืื, ืื ืืืชื ืืคืฉืจื, ืื ืื ืืืฉืืื ืืืชื ืื ืืืชืจ ืืื ืืืืข ืขื ืขืฆืื. ืืื ืืืชืงื ืืช ืฉืื, ืื ืืชื ืฆืจืื ืฉืืคืื ืคืืื ืืจื ืืืืจ ืืืืืืจืื ืืืืืืกืืื, ืื ืืคืฉืจื.
ื-Odyssey ืืฉ ื ืืืืจ ืชืืื ืืืืืืื ืขื PgBouncer. ืืฉ ืื ื ืืช ืืืชื ืงืื ืกืืื ืฉืืจืืฆื ืืืขื ืืช ืื ืืืชื ืืคืงืืืืช. ืื ืืฉืื ืืกืจ, ืฉืื ืืงืฉืช ืืฉืืื, ืื ืืคืืืช ืืขืื ื- GitHub, ืืื ื ื ืฉืืื ืืช ืืคืงืืืืช ืืืจืืฉืืช. ืืื ืืืจ ืืฉ ืื ื ืืช ืืคืื ืงืฆืืื ืืืืช ืืขืืงืจืืช ืฉื ืงืื ืกืืืช PgBouncer.
ืืืืืื, ืืฉ ืื ื ืืขืืจืช ืฉืืืืืช. ืื ื ื ืืืืจ ืืช ืืฉืืืื ืฉืืืืื ืขื ืืื ืืกื ืื ืชืื ืื. ืชืงืื ืืืืข ืืืืข ืืื ื ื ืืื ืืืืืจ, ืืื ืจืง ืฉืืื ื ื ืืื ืื.
ืชืืื ื ืื ืืืฉืืชืช ืืืงืจื ืฉืืชื ืฆืจืื 100% ืชืืืืืช ืขื PgBouncer. ืื ืื ื ืืืืืื ืืืชื ืื ืืืืชื ืืืคื ืืื Bouncer, ืจืง ืืืชืจ ืืืืืื.
ืคืืชืื
ืืื ืืืืื ืขื ืงืื ืืืงืืจ ืฉื ืืืืืกืืื.
ืืืืืื, ืืฉื ื ืคืงืืืืช "ืืฉืื / ืืืฉื". ืื ืืฉืืฉืื ืืืจื ืืื ืืขืืืื ืืกื ืื ืชืื ืื. ืื ืืชื ืฆืจืื ืืขืืื ืืช Postgres, ืืชื ืืืื ืืืฉืืืช ืืืชื ื-pooler ืฉื ืืืืืืจืื, ืืขืฉืืช pg_upgrade ืืื ืืขืฉืืช ืืืฉื. ืืืืฆื ืฉื ืืืงืื ืื ืืืจืื ืืืืื ืืกื ืื ืชืื ืื ืคืฉืื ืืื. ืืคืื ืงืฆืืื ืืืืช ืืื ืืืืื ืืืื ื ืขื ืืื ืื ืฉืื ืืืงืืืื. ืืื ืขืืืื ืื ืงืคืืื, ืืื ืืงืจืื ืืื ืืืื. (ืืืจ ืงืคืื)
ืื ืืกืฃ, ืืื ืืคืืฆ'ืจืื ืืืืฉืื ื-PgBouncer ืืื ืชืืืื ื-SCRAM Authentication, ืืฉืจ ืืืื ืืืื ื ืื ืขื ืืื ืืื ืฉืืื ื ืขืืื ื-Yandex.Cloud. ืฉื ืืื ืคืื ืงืฆืืื ืืืื ืืืจืืืื ืืืฉืืืื.
ืืื, ืื ื ืจืืฆื ืืกืคืจ ืืื ืืื ืืืจืืืช Odyssey, ืืืงืจื ืฉืชืจืฆื ืื ืืืชืื ืงืื ืงืื ืขืืฉืื.
ืืฉ ืื ืืช ืืกืืก ืืืงืืจ ืฉื Odyssey, ืืืกืชืื ืขื ืฉืชื ืกืคืจืืืช ืขืืงืจืืืช. ืกืคืจืืืช ืงืืืื ืืื ืืืฉืื ืฉื ืคืจืืืืงืื ืืืืืขืืช Postgres. ืืืืืจ, ืคืจืืื 3 ืืงืืจื ืฉื Postgres ืืื ืืืืขืืช ืกืื ืืจืืืืช ืฉ-front-ends ื-back-ends ืืืืืื ืืืืืืฃ. ืื ืืืืฉืืื ืืกืคืจืืืช ืงืืืื.
ืกืคืจืืืช Machinarium ืืื ืกืคืจืืืช ืืืฉืื ืฉืจืฉืืจ. ืงืืข ืงืื ืืืืืื ืจืืื ืืื ืืชืื ืืฉืคืช ืืกืืืืื ื. ืืื ืื ืชืืืืื, ืืฉ ืจืง 15 ืฉืืจืืช.
ืืจืืืืงืืืจืช ืืืืืกืื. ืืฉ ืืืื ื ืจืืฉืืช ืฉืขืืื ืคืืขืืืช ืงืืจืืืื ืื. ืืืื ื ืื ืืืืฉืืช ืงืืืช ืืืืืจื TCP ื ืื ืกืื ืืืคืฆืชื ืืื ืขืืืืื.
ืืืคื ืขืืืจ ืืกืคืจ ืืงืืืืช ืืืื ืืขืืื ืืชืื ืขืืื ืืื. ืืฉืจืฉืืจ ืืจืืฉื ืื ืืจืืฅ ืืช ืืงืื ืกืืื ืืขืืืื ืืฉืืืืช crone ืืืืืงืช ืืืืืจืื ืฉืืืจ ืืื ืฆืืจื ืืืจืืื.
Odyssey ื ืืืง ืืืืฆืขืืช ืืืืืช ืืืืืงืืช ืืกืื ืืจืืืช ืฉื Postgres. ืื ืื ื ืคืฉืื ืืคืขืืืื ืืืืงืช ืืชืงื ื ืืจื Bouncer ืืืจื Odyssey, ืื ืื ื ืืงืืืื div null. ืืฉื ื ืืกืคืจ ืืืื ืื ืืงืฉืืจืื ืืขืืฆืื ืชืืจืื ืฉืืื ื ืขืืืจืื ืืืืืง ืืืชื ืืืืจ ื-Bouncer ืื-Odyssey.
ืื ืืกืฃ, ืืฉื ื ื ืืืื ืจืืื ืฉืืฉ ืืื ืืืืงืืช ืืฉืืื. ืืื ืื ื ืืฉืชืืฉืื ืืืืื ืื ืฉืืื ืืื ืืืืืง ืืช ืืืืืืกืื.
ืื ืืกืฃ, ืขืงื ืชืฆืืจืช ืืืคื ืฉืื ื, ืขืืื ื ืืืืืง ืืืืืืช ืฉืื ืืช: Postgres + Odyssey, PgBouncer + Odyssey, Odyssey + Odyssey ืขื ืื ืช ืืืืืช ืืืืืื ืฉืื ืืืืืกืืื ืืืืขื ืืืื ืืืืืงืื ืืืคื, ืื ืื ืขืืืื ืขืืื ืืคื ืฉืื ื ืืฆืคืื.
Rake
ืื ื ืืฉืชืืฉืื ืืืืืืกืืื ืืืืฆืืจ. ืืื ืื ืืืื ืืืื ืื ืืืื ืฉืืื ืคืฉืื ืขืืื. ืื, ืืืืืจ, ืื, ืืื ืื ืชืืื. ืืืฉื, ืืืคืงื ืืื ืคืฉืื ืขืื, ืืื ืืืจืื ืฉืื ื ื-PostgreSQL Professional ืืื ืืืืจื ืฉืืฉ ืื ื ืืืืคืช ืืืืจืื. ืื ืืืืช ืืื, ืชืืงื ื ืืืชื. ืืื ืื ืืื ืคืฉืื.
ืืื ืืืืื ื ืฉืืืืืจ ืืืืืืจืื ืืฉ ืืืืืจื TLS ื ืื ืกืื ืืืืืืจื TLS ืืืฆืืื. ืืืืืืจืื ืืืจืฉืื ืืืฉืืจื ืืงืื ืืืืฉืืจื ืฉืจืช.
ืืืฉืืจื ืฉืจืช Bouncer ื-Odyssey ื ืงืจืืื ืืืืฉ ืขื ืืื ื-PCache ืฉืืื, ืื ืืื ืฆืืจื ืืงืจืื ืืืืฉ ืืช ืืืฉืืจื ืืืงืื ื-PCache, ืืืืืื ืฉ-Odyssey ืื ืืชื ืช ืืืจืืื ืฉืื ื ืืกืืคื ืฉื ืืืจ ื ืชืงืืช ืืืืฆืืขื ืืืขืจืืช ืฉื ืงืจืืืช ืืืฉืืจ ืื. ืื ืื ืื ื ืืืคืชืขื, ืื ืื ืืงื ืื ืืจืื ืืื ืืืชื ืื. ืืืชืืื ืื ืงื ื ืงื ื ืืืื ืืื ืืืจื, ืืื ืืืืจ 20 ืืืืืจืื ื ืื ืกืื ืื ืืื ืืช ืืืขืื ืืื ืืจืืชื ืืช ืขืฆืื.
ืฉืืืช ืืืืืช ื ืืชื ืช ืืืืืืจ ืืื ืืืืืืช ืืืฆืข ืืืืืช ืืืืฆืขืืช ืืื Lunux ืืืื ืื. ื-PgBouncer ืื ืืืืฉื ืืฆืืจื ืืื ืฉืืฉ ืฉืจืฉืืจ ื ืคืจื ืืืืืช ืืชืืืื ื-PAM ืืืฉ ืฉืจืฉืืจ ืจืืฉื ืฉื PgBouncer ืฉืืฉืจืช ืืช ืืืืืืจ ืื ืืืื ืืืืื ืืืงืฉ ืืื ืืืืืช ืืฉืจืฉืืจ PAM.
ืื ืืืฉืื ื ืืืช ืืกืืื ืืืช ืคืฉืืื. ืืฉ ืื ื ืืจืื ืฉืจืฉืืจืื. ืืื ืื ืื ื ืฆืจืืืื ืืช ืื?
ืื ืืืื ืืกืืคื ืฉื ืืืจ ืืืฆืืจ ืืขืืืช ืืื ืฉืื ืืฉ ืื ืืืืืช PAM ืืืืืืช ืฉืืื ื PAM, ืื ืื ืืืื ืฉื ืืืืืช PAM ืืืื ืืขืื ืืฉืืขืืชืืช ืืช ืืืืืืช ืฉืืื ื PAM. ืื ืืื ืืืืืจืื ืฉืื ืชืืงื ื. ืืื ืื ืืชื ืจืืฆื ืืชืงื ืืช ืื, ืืชื ืืืื ืืขืฉืืช ืืืช.
ืืจืืคื ื ืืกืคืช ืืืืชื ืฉืืฉ ืื ื ืืื ืืื ืฉืืงืื ืืช ืื ืืืืืืจืื ืื ืื ืกืื. ืืื ืื ืืืขืืจืื ืืืืืจ ืืขืืืืื, ืฉื ืชืชืงืืื ืืืืฆืช ืืื ืฉื TLS.
ืืฉืืจื ืืชืืชืื ื, ืื ืืฉ ืื ืื ืงืืืจื ืื ืฉื 20 ืืืืืจื ืจืฉืช, ืืืื ืืชืงืืื. ืืืฆื ืืืงืื libpq ืืชืืื ืืืืื ืขื ืคืกืงื ืืื. ืืืจืืจืช ืืืื ืื ื ืจืื 000 ืฉื ืืืช.
ืื ืืืื ืื ืืืืืื ืืืืื ืก ืืืกื ืื ืชืื ืื ืื ืืื ืืช, ืื ืื ืื ืืืืืื ืืืืื ืก ืืืกื ืื ืชืื ืื, ืื ืื ืื ืืืื ืืืืืช ืืืืกื ืขื ืืื ื ืืกืืื ืืืืจ ืื ืืงืกืคืื ื ืฆืืืื.
ืืืขื ื ืืืกืงื ื ืฉืืขืชืงื ื ืืืื ืืช ืืกืืืื ื-PgBouncer ืขื ืืขืืืื ืฉืืฉ ืื ื ืืฆืขืจืช ืืช ืืกืคืจ ืืืืืจื ื-TCP ืืืืื ืื ื ืืงืืืื.
ืื ืื ืื ื ืจืืืื ืฉืื ืื ื ืืงืืืื ืืืืืจืื, ืืื ืืกืืคื ืฉื ืืืจ ืืื ืืื ืืื ืืืืืฅ, ืื ืื ื ืืขืืืืื ืืืชื ืืชืืจ ืืื ืฉืื ืื ืืืืืื ืืฉืืื CPU. ืื ืืืืื ืืื ืฉืื ื ืืชื ืืืฆืข ืืืืฆืช ืื ืื ืืื ืืช ืขืืืจ ืื ืืืืืืจืื ืฉืืืืขื. ืืื ืืคืืืช ืืืฉืื ืืืื ืก ืืืกื ืื ืชืื ืื, ืื ืื ืืขืืืก ืื ืืื.
ืืคืช ืืืจืืื
ืื ืืืืช ืจืืฆื ืืจืืืช ืืขืชืื ืืืืืืกืืื? ืื ืื ืื ื ืืืื ืื ืืคืชื ืืขืฆืื ื ืืื ืื ืื ื ืืฆืคืื ืืืงืืืื?
ื ืืื ืืืืืืกื 2019.
ืื ื ืจืืชื ืืคืช ืืืจืืื ืฉื ืืืืืกืืื ืืืืืืกื:
- ืจืฆืื ื ืืืืืช SCRAM ื-PAM.
- ืจืฆืื ื ืืืขืืืจ ืืงืฉืืช ืงืจืืื ืืืฆื ืืืชื ื.
- ืื ื ืจืืฆื ืืคืขืื ืืืืฉ ืืงืืื ืช.
- ืืืืืืืช ืืืฉืืืช ืืฉืจืช.
ืืืฆืืช ืืืคืช ืืืจืืื ืืื ืืืฉืืื, ืืื ืขื ืืืื ื. ืืื ืืื. ืื ืืืื ื ืืื ืืื ืฉื ืฉืืจ ืื ืืกืืฃ ืขืื.
ืืืืคื ืขืงืจืื ื, ื-Postgres, ืืื ื-10, ื ืืชื ืืฆืืื session_attrs ืืขืช ืืืืืืจ. ืืชื ืืืื ืืจืฉืื ืืช ืื ืืืืจืืื ืฉื ืืกื ืื ืชืื ืื ืืืืืืจ ืืืืืจ ืืื ืืชื ืืืื ืืืกื ืื ืชืื ืื: ืืชืืื ืื ืงืจืืื ืืืื. ืืื ืื ืขืฆืื ืืืืจ ืืช ืืืืจื ืืจืืฉืื ืืจืฉืืื ืฉืืื ืืื ืืืื, ืฉืขืื ื ืขื ืืืจืืฉืืช ืฉื session_attrs.
ืืื ืืืขืื ืืืืฉื ืืื ืืื ืฉืืื ืื ืฉืืืืช ืืคืืืืจ ืืฉืืคืื. ืืืชืื ืฉืืฉ ืื ืืขืชืง ืืืฉืื ืฉื ืฉืืจ ืืืืืจ ืืืฉื ืคืจืง ืืื ืื ืืงืืื ืขืืืจ ืืฉืืจืืช ืฉืื. ืขื ืื ืช ืืืคืฉืจ ืืืฆืืข ืืื ืฉื ืฉืืืืชืืช ืงืจืืื ืขื ืขืืชืง, ืื ื ืืขืฆื ืฆืจืืืื ืืชืืื ืืืืืืช ืฉื Odyssey ืื ืืจืืฅ ืืืฉืจ ืื ื ืืชื ืืงืจืื ืืืชื.
ืขื Odyssey ืืืฉืช ืืื ืคืขื ืืืกื ืื ืชืื ืื ืืืืงืฉ ืืช ืืจืืง ืืฉืืคืื ืืืจืืฉื. ืืื ืืื ืืืืข ืืขืจื ืืืืื, ืื ืชืืคืฉืจ ืืงืฉืืช ืืืฉืืช ืืืืื ืก ืืืกื ืื ืชืื ืื, ืืืืจ ืืืงืื ืฉืืื ืฆืจืื ืืืคืขืื ืืืืฉ ืืืืืจืื ืืืืื ืืืืืจ ืืืจื ืืืจ ืฉืืืฆืข ืืงืฉืืช. ืื ืืืคืฉืจ ืืืกื ืื ืชืื ืื ืืฉืืืจ ืืืืืจืืช ืืช ืืฉืืืืช ืืฉืืคืื ืืืืืืจ ืฉืื ืืื ืืืืื ืขื ืืงืฉื.
ืงืฉื ืืชืช ืืกืืจืช ืืื ืืืืฉืื, ืื ืื ืงืื ืคืชืื. ืืื, ืื ื ืืงืืื, ืื 2,5 ืฉื ืื ืืื ืืงืืืืืช ืฉืื ื-PgBouncer. ืื ืืชืืื ื ืฉืืืืชื ืจืืฆื ืืจืืืช ืืืืืืกืื.
ืืื ืืฉ ืืฆืืจื ืืืื ื ืืจืืช ืคืจืืืืงืื ืืืืืขื ื-proto3. ืืื ืืืงืื ืฉืื ืืืืืข ืฉื ืืฆืจ ืืฆืืจื ืืืื ื ืืืืข ืืฆืืจื ืืืื ืืช. ืืืืืื ื ืืชืืื ืืืื ื ืฉืืืืืืจ ืืืฉืื ืืฉืจืช ืืืงืื ืืืงืฉ ืืืฆืืจ ืืฆืืจืืช ืืืื ืืช. ืืื ืื ืืขืกืงื ื ืกืืจืช, ืื ืื ื ืขืืืื ืฆืจืืืื ืืฉืืืจ ืขื ืงืืฉืืจืืืช ืืื ืืฉืจืช ืืืงืื.
ืืื ืืื ื ืืฆืจืช ืกืชืืจื ืืืืืืื, ืื ืืืฉืื ืืืืจ ืฉืืชื ืฆืจืื ืืืืื ืืืื ืกืื ืฉื ืืฆืืจืืช ืืืื ืืช ืืฆืจ ืืืงืื ืืืฉืชืฃ ืืช ืืืืืืจ ืืฉืจืช ืืื ืื ืืืงืืืืช ืฉืืฆืจื ืืช ืืืืืืจ ืืื ืืฉืจืช, ืืืืืจ, ืื ืืฆืจ ืืฉืคื ืืืื ืืื.
ืื ืืจืก ืคืจืืื ื ืืืจ ืฉืื ืืืืข ืืืื ืืงืื ืฉืืืจ ืืฆืจ ืืฆืืจื ืืื ืืืื ื ืืืืืืจ ืฉืจืช ืืืจ, ืื ืฆืืจ ืืืชื ืขืืืจื. ืืื ืื ื ืจืื ืงืฆืช ืื ื ืืื ืืืฆืข ืฉืืืืชืืช ืืืกื ืื ืชืื ืื ืืืงืื ืืืงืื, ืืื ืื ืงืืืช ืืืื ืฉื ืืืคืชื ืฉืืืชื ืืช ืืคืจืืืืงืื ืืืื ืืจืืงืฆืื ืขื ืืกื ืื ืชืื ืื, ืืืื ื ืื ืื ืคืฉืื ืืชื ื ืื ืืืืืจ ืืจืฉืช ืฉืื ืืฉ ืฉืืืืชื ืืื ืืืื ื.
ืืขืื ืชืืื ื ืืืช ืฉืื ืื ื ืฆืจืืืื ืืืืฉื. ืืขืช ืืฉ ืื ื ื ืืืืจ ืชืืื ื-PgBouncer. ืื ื ืืืืืื ืืืืืืจ ืืช ืืื ืืืฆืืข ืืฉืืืืชื ืืืืืฆืข. ืืื ืืืื ืืืืืฆืข ืืื ืืืืคืจืืืจื ืืืืืฆืขืช ืืืืช ืืืืืื: ืืืงื ืงืจืื, ืืืงื ืืืื โ ืืืืืฆืข ืืืื ืืจืืืื. ืื ืื ื ืืื.
ืื ืื ื ืฆืจืืืื ืืืืฉื ืชืืืื ืืืืืืื ืื, ืื ืฉืืขืื ืฉืืฉ ืฉืืืืชืืช ืืืืืืช ืฉืืืืืืืช ืืฉืืืื ืืืืคืื ืืช ืื ืืืืจ ืืืงืืื ืืืชืจ.
ืืืืจ ืืื ืืฉืื ืืื ืฉืื ื ืจืืฆื ืืจืกื 1.0 (ืืจืกื 1.1 ืืืจ ืืฆืื). ืืขืืืื ืืื ืฉ-Odyssey ื ืืฆืืช ืืขืช ืืืจืกื 1.0rc, ืืืืืจ ืืืขืืืช ืืฉืืจืืจ. ืืื ืืืขืืืช ืฉืฆืืื ืชื ืชืืงื ื ืขื ืืืชื ืืจืกื ืืืืืง, ืืืขื ืืืืคืช ืืืืืจืื.
ืื ืชืืื ืืืฉืืขืืช ืฉื ืืจืกื 1.0 ืขืืืจื ื? ืื ืื ื ืืืืืืื ืืช ืืืืืกืืื ืืืกืืกืื ืฉืื ื. ืื ืืืจ ืคืืขื ืขื ืืกืื ืื ืชืื ืื ืฉืื ื, ืืื ืืฉืืื ืืืืข ืื ืงืืื ืฉื 1 ืืงืฉืืช ืืฉื ืืื, ืื ืืคืฉืจ ืืืืจ ืฉืื ืืจืกืช ืืฉืืจืืจ ืืื ืืจืกื ืฉืืคืฉืจ ืืงืจืื ืื 000.
ืืื ืื ืฉืื ืืงืืืื ืืืงืฉื ืฉืืจืกื 1.0 ืชืืืื ืืคืกืงื ื-SCRAM. ืืื ืื ืืืืจ ืฉื ืฆืืจื ืืืืฆืื ืืช ืืืจืกื ืืืื ืืืืฆืืจ, ืื ืื SCRAM ืืื ืืคืกืงื ืขืืืื ื ืืจืื. ืืื, ืกืืืจ ืืื ืื, ืืขืื ืื ืชืืคืชืจ ืื ืืืจ.
ืื ื ืืืื ืืืงืฉืช ืืืฉืืื ืฉืื. ืื ื ืื ืจืืฆื ืืฉืืืข ืืืื ืืขืืืช ืืฉ ืื ืขื Bouncer. ืืืื ื ืืื ืืื. ืืืื ื ืืื ืืืืฉื ืืื ืคืื ืงืฆืืืช ืฉืืชื ืฆืจืื.
ืื ืกืืฃ ืืืืง ืฉืื, ืืืืชื ืจืืฆื ืืืงืฉืื ืื. ืชืืื!
ืฉืืืืช
ืื ืื ื ืืืืืจ ืืช application_name ืฉืื, ืืื ืืื ืืืขืืจ ืืจืืื, ืืืื ืืืืืื ืขืกืงืืืช ืืืืืืกืืื?
ืืืืืกืืื ืื ืกืืจื?
ืืืืืืกืืื. ื-Bouncer ืื ื ืืจืง.
ืื ืื ื ื ืขืฉื ืกื.
ืืื ืืืืืืจ ืืืืืชื ืฉืื ืืงืคืืฅ ืขื ืืืืืจืื ืืืจืื, ืืื ืืื ืืฉืืืจ?
ื ืืฆืืจ ืงืืืฆื ืฉื ืื ืืคืจืืืจืื ืืจืฉืืืื ืืจืฉืืื. ืื ื ืื ืืืื ืืืขืช ืื application_name ื ืืฆื ืืจืฉืืื ืื. ืื ื ืืืฉื ืฉืจืืืชื ืืืชื ืฉื. ื ืืืืจ ืืช ืื ืืืชื ืืคืจืืืจืื. ืขื ืืงืฉื ืืืช, ืืกื ืืืฆืข ืืช ืื ืื ืฉืืืชืงื ืขื ืืื ืืืงืื ืืืืื ืืืคืขืื.
ืชืืื ืื, ืื ืืจืื, ืขื ืืืืืื! ืืืืื ืืื! ืื ื ืฉืื ืฉืืืืืกืืื ืืชืคืชืืช ืืืจ ืืืชืจ ืืืืชืจ ืืื ืืงื. ืื ื ืจืืฆื ืืืืฉืื ืืื. ืืืจ ืืืงืฉื ื ืืื ืฉืืืื ืื ืืืืืจ ืจืืืื ืืงืืจืืช ื ืชืื ืื ืื ืฉ-Odyssey ืชืืื ืืืชืืืจ ืืืกืืกื ื ืชืื ืื ืฉืื ืื ืื-ืืื ืืช, ืืืืืจ ืขืื ืืืกืืจ, ืืืืืจ ืืื ืืืชืืืจ ืืืืืืืืช ืืืืกืืจ ืืืฉ ืืืืจ ืืฉื.
ืื, ื ืจืื ืื ืฉืื ื ืืืืจ ืืช ืืืืื ืืื. ืขืืฉืื ืืฉ ืืื ืืืกื ืื. ืืื ืืื ืืขืืจ ืืื ืืื. ืืืฆื ืฉืื ื, ืขืืื ื ืืกืงืืจ ืืช ืืฉืจืช ืฉืืื ืขืืืื ืื ืืืืืื ืฉืืชืจืืฉ ืชืงืื, ืื ืืงืจื ื-pg_recovery. ืืฉ ืื ืืจื ืกืื ืืจืืืช ืืืืื ืฉืื ืืืขื ื ืืืืกืืจ. ืืืื ื ืืื ืืืืฉืื ืืืืขืืืืช ืื ืื? ืืืืืจ, ืืจืขืืื ืืขื ืืื, ืื ืื ืื. ืืชืื ืขืื ืชืืืืืช. ืื ืืฉ ืื ืขืืืืื ืฉืืืืจืื ืืช C, ืื ืื ื ืืืจ.
ืกืืืืืช ืงื ื ืืืืื ืืื ืืขืชืงืื ืืขื ืืื ืช ืื ืืืชื ื, ืืืืืื ืฉืื ื ืจืืฆืื ืืืคืื ืืช ืืืืืืฅ ืฉื ืืฉืืืืืช ืืฉืืืคืืื ืืคืฉืืื ืืื ืืืคืฉืจ ืขืืืจ ืืคืชืื ืืคืืืงืฆืืืช. ืืื ืืื ืืืืชื ืจืืฆื ืขืื ืืขืจืืช, ืืืืืจ ืืืืืง ืืื ืืขืฉืืช ืืช ืื, ืืื ืืขืฉืืช ืืช ืื ืืื.
ืืฉืืื ืืื ืื ืืืื ืืขืชืงืื. ืืกืชืืจ ืฉืืฉ ืื ืืืกืืจ ืืืื ืืขืชืงืื. ืืืจืืจ ืฉืื ืืืืืื ืืืขืชืง ืืชืืืจืืช ื ืืืื ืืืชืจ ืืืฉืจ ืืืืกืืจ ืืฉืืื ืงืฉืจืื, ืื ืืืื ืืฉ ืืื ืืื ืืืืืื. ืืืจืช ืฉืืืืื ืื ืชืื ืื ืืืื ืืืืืช ืืื ืฉืื ืื ืืกืคืง ืืช ืืขืกืง ืฉืื ืืื ืชืื ืืฉื ืขื ืฉืืื ืืฉืืืคื. ืืื ืขื ืืืช, ืื ืื ืืืืช ืืฉื ืืจืื ืืื, ืืื ืืชืืืช ืืืืช, ืื ืื ืชืื ืื ืืืจืืฉืื ืื ืืืื ืืืื ืื ืืื. ืืืืืจ, ืื ืื ืื ื ืืืืืื ืื ืืืื ืืืืกืืจ, ืื ืืืืืื ืฉื ืืชืืื, ืืื ืืืขืชืง ืืืืืื ืืขื ืืคืืจ.
ืื ืื ื ืืื. ื-pcache ืื ืืืืื ืืช ืืืืงื ืื ืชืื ืื ืฉืืชื ืจืืฆื, ืืืืืื ืืืืืชื ืื ืืืื ืืืืข ืขื ืืืืืืืช ืฉืืชื ืจืืฆื, ืืชืืื ืืืช ืื ืืืื ืฉืืืืชืืช ืื ืืชืืืช, ืื ืืืื ืืืื ืืืื.
ืืืฉืืฉ ืื ืกืื ืฉื ืืฉืืื, ืืืชื ืืืกืืฃ ืฉื ืืขืชืง ืืืฉ, ืื ืืืื ืฉืืื ืืชืืื, ืืื ืจืข ืื, ืืืืืจ ืื ืืืืื ืืช ืืืืืื ืฉืื.
ืืื ืชื ืืช ืืจืขืืื. ืืืืฉื ืื ืืื ื ืชืืื ืืืจืืฅ ืชืืืื ืืืื ืงืื ืฉื ืฉืืืืชืืช ืขื ืืขืชืง, ืื ืฉืืืื ืืช ืืืืืื. ืืืืคื ืืก, ืืฉ ืื ื ืชื ืื ืฉืขืืื ื ืืคืืจ ืืืืืจื ืืืืกืืจ ืืื ืืืชืจ ื-10 ืฉื ืืืช. ืืชื ืื ืื ืืื ื ืืืื ืืื ืืื, ืืื ืืฆืืจื ืืืงื ืขืืืจ ืืืง ืืืืงืืืืช.
ืื, ืชืขืื ืืืฉืงื.
ืื ืจืขืืื ืืื. ืืื ืชืืืื ืขืืื ื ืืืืฉื ืืช ืืืฉืืชื ืืื. ืจืืฉืืช ืขืืื ื ืืืืืช, ืืืืืจ ืืื ื ืืฉืื ืืืฆื ืืืคืขืื. ืืืื ืชืืื ื ื ืืืจืช ืืืคืขืื ืืืงื.
ื- Nginx ืืฉ ืืช ืืืคืฉืจืืช ืืื slowly start
ืืืฉืืื ืขืืืจ ืืฉืจืช. ืืืื ืืืืื ืืืืจืื ืืช ืืขืืืก.
ืื, ืจืขืืื ืืฆืืื, ื ื ืกื ืืืชื ืืฉื ืืืข ืืืื.
ืืงืืจ: www.habr.com