
Mikhail
10.08.2018
10:01:54
надо научиться жить :)

Yury
10.08.2018
10:03:34

Maksim
10.08.2018
10:05:18

Yury
10.08.2018
10:06:49

Google

Yury
10.08.2018
10:07:10
да и про сборщики муссора в целом много чего известно

Алексей
10.08.2018
10:07:35

Mikhail
10.08.2018
10:08:00
умный приклад
качественного решения для автоматического разруливания балансировки пока, увы, нет

Алексей
10.08.2018
10:08:27

Mikhail
10.08.2018
10:08:36
разработчик
надо просто держать 2 persistent connection'a
один для insert/update
другой для select (без sequences)
просто я тоже был оптимистом по части pgpool
там очень много головной боли, связанной с переключением мастера

Yaroslav
10.08.2018
10:10:45

Mikhail
10.08.2018
10:10:54
ооо...

Google

Mikhail
10.08.2018
10:11:13
там столько интересного и кривого
ну тогда слушайте (с)
=)
короче
логика переключения мастера базируется на неких эвентах
как только срабатывает эвент, то запускается определенный скрипт(написать надо самому)
далее еще чудеснее
скрипт для переключения запускается не через ssh, а через расширение, которое надо поставить на каждый pgsql

Yaroslav
10.08.2018
10:13:40

Mikhail
10.08.2018
10:13:46
ага
до сих пор думаю матом про него
там есть некий управляющий интерфейс pcp_*
это лютый ппц
а! во!
главное, если реплика(слейв) к примеру, вывалилась из пула, то ее включать только руками через pcp_
я всё это разворачивал с centos
и пакет дико глючил
особенно по части балансировки
пришлось сливать с сайта разработчика
текс...

Google

Mikhail
10.08.2018
10:15:52
чёго там еще веселого
а во!
авторизация!
вам придётся делать 2х этапную авторизацию... буквально
т.е. длогин/пароль в базе

Yaroslav
10.08.2018
10:16:40

Mikhail
10.08.2018
10:16:47
и логин/пароль в файле для pgpool, зашифрованный по md5
но оно тоже работает через пень колоду
реплика перезаливается, а в кластер не влетает
т.е. вконец скрипта надо добавлять pcp_
ща вспомню, как там оно зовётся...

Mikhail
10.08.2018
10:18:46
pcp_attach_node
во...

Yaroslav
10.08.2018
10:18:57
Нда. А какое у нас тогда нормальное решение для load balancing, интересно...

Mikhail
10.08.2018
10:19:11
никакого
погодите
это еще не все
т.к. pgpool - это по сути кусок pgsql'я, то он унаследовал все прелести prefork модели работы с коннектами!
А это значит следующее...

Google

Mikhail
10.08.2018
10:20:11
У меня было 2 ПГпула, настроенных на 3 сервера
1 мастер + 2 реплики
надо было организовать вачдог, чтоб при падении 1 пула, 2й поднимал флпаг и далее по списку.
Вачдог в нём работает шикарно
что есть то есть
адрес перескакивает на ура
но вот незадача

Admin
ERROR: S client not available

Mikhail
10.08.2018
10:21:16
у меня в настройках сервера было 300 коннектов
но когда я подключаю два ПГпула, их получается 600!
а всё потому, что он использует всё тот же хвалёный префорк
кстати, коннекты он не отдаёт
Решил я эту задачу просто
закостылил pgbouncer
получилось так:
pgpool —- pgbouncer —- pgsql
вобщем резюме.
1. Переключение реплик - надо костылить много
2. Балансировка - да, но многие жалуются на потерю производительности вплоть до 20%
3. Вачдог - да, но не без костылей с коннектами

Петруха
10.08.2018
10:24:44
Я конечно извиняюсь, но не могли бы Вы, Михаил, писать в сообщениях хотя бы целые предложения? Про абзацы я не говорю. Спасибо

Yaroslav
10.08.2018
10:25:07
Жжесть. ;(
А мне сходу не понравилось то, что даже в release notes отмечается относительно много критических ошибок (в каждом release!).
И потом, похоже, pgpool навязывает политику — т.е. делай такую архитектуру, как мы задумали, и без вариантов.

Mikhail
10.08.2018
10:25:15
Я попытаюсь. Пожалуйста.
Ну он, да, странный какойто

Google

Mikhail
10.08.2018
10:26:07
Сейчас я остановился на связке haproxy - pgbouncer -patroni - pgsql
если интересно, расскажу =)

Yaroslav
10.08.2018
10:26:58

Mikhail
10.08.2018
10:27:20
Взаимно :)

Yaroslav
10.08.2018
10:27:27

Mikhail
10.08.2018
10:27:57
а, там еще vrrp добавили для переноса кластерного ip
По моему ребята из постгреспро тоже както не лестно о пгпул отзывались
не помню ток где встречал =)
меня вот щас интересует больше идея PgSQL over HDP
но там с вакуумом те же грабли :)

Yaroslav
10.08.2018
10:32:02

Игорь
10.08.2018
10:32:08

Mikhail
10.08.2018
10:41:26
@uspen2018 вот вас я теперь
отдельной
строкой
не
уважаю
:)

Алексей
10.08.2018
12:31:51

Tolya
10.08.2018
12:53:05
Привет! Кто-то настраивал аутентификацию через RADIUS? Постгрес может передавать только хешированные пароли? Он может использовать метод PAP с радиусом?

Terminator
10.08.2018
12:53:54
@kabil888 будет жить. Поприветствуем!

Andrey
10.08.2018
13:08:12

The
10.08.2018
13:10:33
select sku_id from shop_feature_brand_sku where feature_value_code = 'xiaomi'
intersect
select sku_id from shop_feature_cores_sku where feature_value_code = 2
intersect
select sku_id from shop_feature_ram_sku where feature_value_code = 4096
Как можно оптимизировать этот запрос? индексы вешать я так понимаю не вариант, cardinality будет низкий.
EXPLAIN: http://tatiyants.com/pev/#/plans/plan_1533906548722