|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Все ли пулы коннектов одинаково полезны? Возьмём кластер из двух серверов, один поближе, другой подальше. Настолько подальше, что пинг достигает полусекунды. Когда приложение хочет подключиться к базе, два подключения пытаются установиться одновременно. Первое выигрывает, второе помещается в пул. Но отсюда следует, что в следующий раз это приложение быстро получит из пула подключение к медленному серверу, без вариантов. Ещё одно соображение: временно неиспользуемое подключение из пула может "протухнуть", разорванное особо ретивым роутером и никто этого не заметит. То есть приложение получит из пула дохлое подключение и первое, что придётся сделать - проверить его "живость" пингом. Это будет ли быстрее, чем установить новое соединение с нуля? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 02:00 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Похожая ситуация решается в nginx, модуль upstream . Для сервера можно установить вес или назначить его резервным (backup), тогда запрос пойдет только если не доступен основной сервер. С разрывами от маршрутизаторов/межсетевых экранов/SIEM поможет настройка keep alive в ОС. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 09:48 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Какая-то "странноватая" задача ... Зачем класть в общий пул подключения к разным серверам??? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 13:46 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Sergey A. VolkovС разрывами от маршрутизаторов/межсетевых экранов/SIEM поможет настройка keep alive в ОС. Я пробовал, не помогает. Типичная киска имеет таймаут неактивности TCP соединения размером в минуту, при установленном KEEP ALIVE в 30 секунд соединение всё равно разрывается. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 13:55 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Типичная киска имеет таймаут неактивности TCP соединения размером в минуту ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 14:05 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Basil A. SidorovЗачем класть в общий пул подключения к разным серверам??? К разным серверам - потому что это ХА/ЛБ кластер. Зачем класть в пул - вопрос топика на который я и хочу знать ответ. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 14:20 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Я всё равно не понимаю ... Есть мастер-мастер репликации и данные можно брать с любого сервера. При этом, чтобы собрать сметану со всякой гадости, часть серверов загоняется в Падьюк/Урюпинск и работать с ними невозможно. Т.е. часть кластера, на самом деле, вовсе не "высокая доступность", а наоборот - "последний шанс". Раз компоненты не соответствуют исходной постановке, то и задача решения не имеет. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 14:48 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
первая реакция на исходный пост - зачем в один пул? то что рядом в основной пул, то что далече - в резервный ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 19:40 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Идея с двумя пулами, конечно, интересная, но я не понимаю когда использовать коннекты из резерного пула. Когда основной пуст? Так он пуст всегда для второго подключения если первое ещё не освободилось. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 19:47 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, мне кажется логика получения готового или ожидания установки нового / возвращения в пул старого должна быть внутри пула с необходимым таймаутом, а вот когда не дождались основного (ошибка или по таймауту) пошли в резервный, этакий фолбек план А провалился, работаем по плану Б ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 19:52 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Или можно вообще запоздавшие коннекты в пул не ставить, а только освобождённые главные. Это, пожалуй, будет хорошо. Ещё одна забавная идея: совместное использование одного TCP коннекта несколькими Firebird коннектами. Может сэкономить время на TCP handshake и даже уменьшить вероятность разрыва по неактивности, но не будут ли они "толкаться локтями"? Технически-то через шнурок способно пролезть только ограниченное число пакетов и в общем-то всё равно один это будет коннект или несколько. Или нет?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 20:30 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Ещё одна забавная идея: совместное использование одного TCP коннекта несколькими Firebird коннектами. Существенная для коротких подключений фаза "трёхходового рукопожатия" станет локальной и существенно более быстрой. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 20:42 |
|
To pool or not to pool
|
|||
---|---|---|---|
#18+
"Как" - не вопрос. "Имеет ли смысл" - вот загвоздка. С одной стороны коннекты Firebird не такие короткоживущие как у HTTP, но с другой - сабж исключительно подключение и ускоряет, а некоторые считают его полезным и используют. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2021, 23:04 |
|
|
start [/forum/topic.php?fid=40&fpage=2&tid=1559868]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 238ms |
total: | 363ms |
0 / 0 |