1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WebSphere Liberty → Db2 pureScaleの接続遅延

Last updated at Posted at 2025-12-01

OpenShiftのLibertyコンテナでトランザション処理中、バックエンドのDb2 pureScaleへの接続処理が極端に遅延する事象に遭遇したので、メモ。

構成

  • WebSphere Liberty 24.0.0.6(OpenShift)
  • sysplexWLB(Workload Balancing) を有効化
  • Db2 pureScale (AIX / 4メンバー構成)

事象

全トランザクション中約1%程度で、DB接続処理に1秒以上の遅延が発生していた。

原因

アプリログおよびJDBCトレースを解析し、「pureScale側のServerList更新処理」と「Liberty側のServerList取得処理」の競合が原因であると判明。

  1. pureScale側は5秒ごとにServerListを更新する際、一時的にリソースをロック(あるいは更新完了まで応答を保留)する
  2. Liberty側は10秒ごとにリストを取得する
  3. Libertyがリストを取得しに行ったタイミングが、たまたまpureScale側の更新処理中だった場合、更新が完了するまでLiberty側が待たされる(ブロックされる)

対応

1. JDBCドライバのバージョンアップ

JDBCドライバのバージョンは4.33.32だったが、4.34.30に更新。
4.34.30では「ServerListの更新中に取得リクエストが来た場合、更新の完了を待たずに直前のリストを使用して即座に応答する」という機能が実装されているため。

結果として約200ms程度の遅延改善。

2. AIX LPARのCPUモード変更

現行設計ではAIXのLPAR(論理区画)はCPUリソースを他の区画と共有するSharedとなっていたが、これをDedicatedに変更。

結果、1秒以上の遅延発生率は 0.01% 以下にまで減少。

ServerList更新スレッドがCPUを専有できるようになり、更新処理およびLibertyへの応答が瞬時に完了するようになったと思われる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?