Nonstop ODBC: Как соединения (серверы ODBC) назначены CPU?

StackOverflow https://stackoverflow.com/questions/2858722

  •  30-09-2019
  •  | 
  •  

Вопрос

У нас есть пул ODBC, работающий на нестапорциональном сервере. Бассейн подключен к SQL / MX.

Этот бассейн используется несколькими внешними приложениями Java, каждый из которых имеет пул JDBC, подключенный к пулу ODBC (например, 14 соединений на применение).

Со временем (после нескольких рециркулирующих приложений) мы видим дисбаланс между процессорами - у некоторых есть 8 процессов ODBC, некоторые только 5., которые приводят к дисбалансу времени процессора.

До этого момента мы предположили, что ЦП назначается процессу ODBC в Round-Robin Fashion. Это будет поддерживать количество процессов ODBC более или менее одинаково распределена. Это не так, хотя.

Есть ли какие-либо информации о том, как Bool ODBC решил, какой ЦП выбирал для каждого нового выделенного процесса? Это смотрит на загрузку процессора? Доступная память? Что-то другое?

К сожалению, даже люди HP (доступны для нас, то есть) не могли ответить на эти вопросы с уверенностью. :-(

Это было полезно?

Решение

И на самом деле подключения назначаются процессоры в круглой робинской моде. Но если один из потребителей (со своим собственным бассейном) возобновляется по какой-либо причине, соединения будут выпущены на процессорах, где они были выделены (очевидно), но новые будут выделены на следующем процессоре в соответствии с алгоритмом Round-Robin Отказ Таким образом, некоторые процессоры станут менее занятыми, а некоторые. Таким образом дисбаланс.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top