Question

Nous avons une piscine ODBC fonctionnant sur un serveur NonStop. La piscine est connecté à SQL / MX.

Ce pool est utilisé par quelques applications Java externes, dont chacune possède une piscine JDBC connectée à la piscine ODBC (par exemple des 14 connexions par application).

Avec le temps (après quelques recyclages d'application), nous voyons un déséquilibre entre les CPU - certains ont 8 processus ODBC en cours d'exécution, certains seulement 5. Cela conduit à un déséquilibre de temps CPU trop

.

Jusqu'à ce point, nous avons supposé qu'un CPU est affecté à la mode processus ODBC dans la ronde. Cela maintiendrait le nombre de processus ODBC plus ou moins également répartie. Ce n'est pas le cas cependant.

Y at-il des informations sur la façon dont ODBC piscine a décidé que CPU à choisir pour chaque nouveau processus alloué? Est-ce qu'il regarde la charge CPU? Mémoire disponible? Quelque chose d'autre?

Malheureusement, même peuple de HP (disponible pour nous, qui est) ne pouvait pas répondre à ces questions avec certitude. : - (

Était-ce utile?

La solution

Et dans les connexions fait sont affectées aux unités centrales à la mode ronde. Mais si l'un des consommateurs (avec sa propre piscine) est relancé pour une raison quelconque, les connexions seront publiées sur les CPU où ils ont été attribués (évidemment), mais de nouveaux seront alloués sur la prochaine CPU selon l'algorithme round-robin . Ainsi, certains processeurs deviendra moins occupé, et un peu plus. Ainsi, le déséquilibre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top