X

An Oracle blog about WebLogic Channel

WebLogic Serverのチューニングとトラブルシューティング

WebLogic勉強会 通信

WebLogic Serverファンの皆様、こんにちは、WebLogic Server勉強会通信です。2013年の最後の2回11月27日と12月19日のWebLogic Server勉強会では、毎回アンケートで最も聞きたい内容トップ1,2に挙げられる「チューニングとトラブルシューティング」を取り上げました。岡田さんのセッション、
「WebLogic Serverチューニングのポイント」
では、スレッド管理をはじめとしたWebLogic Serverの設定やアプリケーションの設定の基本的なアプローチと設定方法。
「WebLogic Serverのトラブルシューティングのポイント」
では、サーバーログやGCログ、スレッドダンプなどの収集方法やツールの活用方法を解説してもらいました。LTセッションでは、現場での体験談や各種パラメータの意味や設定方法など実践的な内容をお話しいただきました。チューニング、トラブルシューティングに有益な情報が満載です。ここではセッションのポイントをまとめて見ます。(日本オラクル Fusion Middleware事業統括本部 佐々木 政和)

WebLogic Serverチューニングのポイント

まず、初めにWebLogic Server上にアプリケーションをデプロイして起動している環境を認識する必要があります。アプリケーションはH/W, OS, JVM, WebLogic Serverのスタック上で動作しています。つまり、「チューニング」の対象はこのすべてのレイヤーになります。アプリケーションを期待通りに動作させるためには、H/W, OS, JVM, WebLogic Serverおよび アプリケーションが適切に設定され、プログラミングされなければなりません。岡田さんは、WebLogic Serverの設定、アプリケーションプログラムの開発と設定の視点でポイントを下記の様に整理しています。

WebLogic Serverのリソースを効率的に使用して最適なパフォーマンスを得るためには、スレッドプール、自動チューニングスレッドプール(初期値の設定が可能)、ワークマネージャの振る舞い、データソース容量の管理などが重要です。

Webアプリケーション開発のポイントは、JSPデプロイ前コンパイル、HTTPSessionの設定値、EJBフリープールとキャッシュなどです。

WebLogic Serverは自動チューニング機能や過負荷保護機能などリソースを効率良く使用する機能を提供しています。デフォルト設定でもある程度の性能が得られますがWebLogic Serverのリクエスト処理の流れを把握して各パラメータの設定を行えばより効率的な処理を実行できます。WebLogic Serverだけでなくアプリケーション実装のチューニングも実施してください。

WebLogic Serverトラブルシューティングのポイント

WebLogic Server上でアプリケーションを動かしている場合に、
WebLogic Serverがスローダウン/ハングする、
データソースの接続先のデータベースからの応答が悪くなる、
プロセスのCPU使用率が100%近くなり応答が返らない、
Javaヒープ使用量が徐々に増え続けていく、
WebLogic Serverがクラッシュする (Coreを吐く)、
WebLogic Serverが起動しないなどの
状態に陥る可能性があります。その時に何をすべきか、
トラブルシューティングの手順を学びます。

WebLogic Serverが提供する様々な情報を活用するために
WebLogic Serverのログ情報の取得、
JVMのスレッドダンプの取得と分析、
診断イメージキャプチャの取得方法、
Flight Recorder記録開始と分析など。

やはりチューニングやトラブルシューティングは総合力です。WebLogic Serverの基礎をしっかり固めてステップアップしましょう。WebLogic Server勉強会は参加者皆様のスキルアップを目指して開催されています。

次はLTセッションを紹介します。

「Webサーバ・プラグインのタイムアウト設定」

伊藤忠テクノソリューションズ株式会社の橋本 和俊氏がOracle WebLogic Server 12.1.2とOracle iPlanet Web Server 7.0.17を使用した際のWebサーバプラグインのタイムアウトのパラメータの意味と振る舞いについて語りました。
資料は、
「Webサーバ・プラグインのタイムアウト設定」
です。

「WebLogic Server高負荷試験で得た経験談―性能改善の一例」

サクラシステムサービス株式会社の王鈺氏が「WebLogic Server高負荷試験で得た経験談―性能改善の一例」を紹介しました。侍やFlight Recorderを使用して見つけたホットメソッドへの対処としてJVMの適切なオプションを見つけ出した経験談です。
資料は、
「WebLogic Server高負荷試験で得た経験談―性能改善の一例」
です。

「やっぱりWTC!」

Facebook上の「やっぱりWebLogic!」グループ」管理人の櫻井将一郎氏が「やっぱりWTC!」と題してWebLogic ServerとOracle Tuxedoが連携するための機能であるWTC(WebLogic to Tuxedo Connector)の相互運用チュートリアルを紹介しました。WebLogic ServerはWTCを介してTuxedoのドメインゲートウェイと通信できるのでJavaとC/COBOLアプリケーションの相互呼び出しをシンプルに実現できます。
資料は、
「やっぱりWTC!」
です。

「Native Memory Tracking (NMT)」&「Oracle JDBCドライバプロパティの活用」

伊藤忠テクノソリューションズのOracle ACE山田貴裕氏がLTセッション(2つ)を講演しました。初めのセッションは、JDK7u40以降で実装されたJavaヒープ以外のネイティブ領域の使用状況をトラッキングできる、「Native Memory Tracking (NMT)」 の使用方法、サンプル。次のLTは、「Oracle JDBCドライバプロパティの活用」と題して、JDBCドライバのパラメータでデータベース接続時のタイムアウトやソケット読込時のタイムアウトの設定方法と動作内容を解説しました。
資料は、
「Native Memory Tracking (NMT)」

「Oracle JDBCドライバプロパティの活用」
、です。

「Flight Recorder活用の実践」

GlassFishユーザー・グループジャパン 副会長の蓮沼 賢志氏が「Flight Recorder活用の実践」として、
開発テスト時にFlight Recorderを活用するメリットを紹介しました。
実際の経験からシステム障害の原因のほとんどはアプリケーションの不具合であることを考えると、
開発時にFlight Recorderでアプリケーションの動きを「透視する」ことができれば
本番環境での障害を未然の防止策につながるはず。
資料は、
「Flight Recorder活用の実践」
です。

2013年お付き合いありがとうございました。来年もよろしくお願いします。

2013年のWebLogic Server勉強会は東京では1月から12月まで計12回、大阪では3カ月に1回のペースで計4回開催することができました。
最近は、Lightning Talksセッションで現場で経験された話題が増えてきています。また、「お悩み相談室」も毎回盛んになってきました。来年も継続する予定です。WebLogic Server勉強会スタッフ一同、皆様の積極的なご参加をお待ちしています。
本年は大変お世話になりました。どうぞよい年をお迎えください。








Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.