SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

最新イベントはこちら!

Data Tech 2024

2024年11月21日(木)オンライン開催

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

EnterpriseZine(エンタープライズジン)

EnterpriseZine編集部が最旬ITトピックの深層に迫る。ここでしか読めない、エンタープライズITの最新トピックをお届けします。

『EnterpriseZine Press』

2024年秋号(EnterpriseZine Press 2024 Autumn)特集「生成AI時代に考える“真のDX人材育成”──『スキル策定』『実践』2つの観点で紐解く」

WebSphere Application Server(AD)

クラウド時代のJavaEEプラットフォーム選びのポイント

第1回

クラウドコンピューティングで重要な技術要素は、サーバー仮想化だけではない。その上で必ず動かすことになるアプリケーション・サーバーの機能、性能もクラウドを効率的に活用するにはきわめて重要な技術要素だ。とはいえ、オープンなJavaの実行環境であるJavaEEプラットフォームの差を製品ごとに見いだすのは、難しいものがある。そのような中で、国内市場シェアで1位を獲得しているIBM WebSphere Application Serverには、どのような特長があるのだろうか。

クラウド時代に重要なアプリケーション・サーバーをどう選ぶか

  いまや、クラウドコンピューティングという言葉を耳にしない日はない。そのクラウドコンピューティングを実現する要素として注目されている技術の1つに、サーバー仮想化がある。さらに、NoSQLなどと呼ばれるKey-Value型のデータベースにも注目が集まっている。

 これらに加え、忘れてならないのがアプリケーション・サーバーだ。プライベートでもパブリックでも、クラウド上で様々なアプリケーションを稼働させ、それをネットワーク越しに利用するには、アプリケーション・サーバーは必須だ。ところが、重要な構成要素であるにも関わらず、アプリケーション・サーバーについてはあまり詳細な情報が提供されていないと思えるのは気のせいだろうか。

 多くのベンダーから、アプリケーション・サーバー製品が提供されている。それぞれに、どのような違いがあり、どのようなポイントで製品を選択すればいいのか。ちなみに、2009年のアプリケーション・サーバー製品の、国内市場における売上シェアを見てみると、IBMのWebSphere Application Serverが2008年に続き連続で1位を獲得している。

 「この採用実績の多さがWebSphereが選ばれている理由の1つです」と、日本アイ・ビー・エム ソフトウェア事業 WebSphere第一CTPの須江信洋氏は語る。もちろん、この実績のベースとなるものとしてITコスト削減効果、運用管理の効率化、高いパフォーマンス、先進的な技術なども、選択される理由だと説明する。

 さらに、WebSphereでは、他社製アプリケーション・サーバーが混在する環境でも一元的に管理できる機能や、仮想化技術と融合しクラウドコンピューティング環境に最適化されたソリューションなども提供しているとのことで、ユーザーの要望に対しこれらが適材適所に評価され、シェア1位という実績につながっているのだろう。(次ページへ続く

 

WebSphere Application Server 関連情報

WebSphere Application Server なら様々な周辺機能が標準装備

 とはいえ、Javaプログラムを単純に動かすだけでは、各社製品の差を見いだすのは難しいかもしれない。処理性能のベンチマーク結果を見ても、WebSphereが1位を獲得していることもあれば、他社製品がそれを脅かすこともある。性能ベンチマークについては、各社が切磋琢磨し競い合っている部分でもあり、現状で圧倒的にどこかが優位性を持っているとは言いにくい。

 製品の差が現れやすいものに、アプリケーション・サーバーの周辺機能がある。例えば、レスポンス性能に大きな影響を与える機能に、キャッシュがある。他社製品の多くは、キャッシュは別製品かオプショナル機能として、別途ライセンス費用が必要なものも多い。

 これに対し、WebSphereではキャッシュ機能は標準で用意されている(図1)。WebSphereのキャッシュ機能は、HTTPサーバーやProxyサーバーで静的コンテンツをキャッシュすることはもちろん、アプリケーション・サーバー部分で動的コンテンツのキャッシュも可能だ。もちろん、これらを組み合わせ、多段階のキャッシュの仕組みも構築できる。

図1:ライセンス課金対象はAPサーバーのみ

 「キャッシュ機能は初期設定ではオフになっています。これをオンにしただけで大幅なレスポンス向上が実現できたサイトもあります」と須江氏は言う。この他にも、ソフトウェア・ロードバランサー機能も標準とのことだ。さらに、他社製品では上位版でしか提供していないようなクラスタリング機能も、WebSphereなら廉価版のExpressやBaseエディションでも、5ノードまでのクラスター構成が可能となっている。これにより、追加費用なしで障害発生時にHTTPセッションを引き継ぐ、高可用性機能が実現できる。

 さらに、Feature Pack(拡張機能を追加するための無償のアドオンパッケージ)という形で新たな機能も追加できる。SIPへの対応や、WebSphereの上でJavaによるバッチ処理を行う機能などが拡張機能として用意されており、これらについてもWebサイトからダウンロードして機能追加が可能だ。Feature Packの利用は製品サポートの対象となり、追加のライセンス費用も必要ない。

 「アプリケーション・サーバーの様々な周辺機能が、WebSphereには標準で装備されています」と須江氏。WebSphereは、本体に多くの周辺機能のライセンスも含まれているので、クラウドで必要となる様々な機能を組み合わせた、トータルな構成の場合に他社製品よりもかなり安価になる可能性があるとのことだ。ライセンス費用が削減できれば、運用コストとなる保守費用の圧縮にもつながる。

次ページへ続く

 

 

WebSphere Application Server 関連情報

64bit環境を最大限に活用する

 Javaプログラムを動かす際に、大きなヒープメモリ空間を利用したいことがある。この要望を実現するには、今ならJVMを64bit化することになるだろう。ところが、国産のアプリケーション・サーバー製品などでは、そもそも64bit環境に対応しておらず、大きなヒープサイズの利用が難しいものもある。また、JVMが64bit対応さえしていればいいのかと言えば、実はそう簡単な話でもない。

 須江氏は「JVMを64bitにすると処理が遅くなることがあります」と指摘する。JVMのヒープは、性能に影響を与えるガベージコレクションの対象となるメモリ空間だ。64bit化すればメモリ空間は広がるのだが、オブジェクトを参照するポインタも32bitから64bitと2倍になるため、同じ数のオブジェクトを扱うために必要なメモリ量が増加してしまう。こうなると、1回のガベージコレクションの処理時間が増えてしまい、結果的にはアプリケーション停止時間が長くなってしまうのだ。

 これに対しWebSphere Application Server V7.0では、最新のIBM SDK for Java 6を利用することで、オブジェクトポインタの圧縮が可能となる。この圧縮機能の利用でヒープ利用量とガベージコレクションのオーバーヘッドを削減して、32bit JVMと数パーセントしか違わない性能を実現している(図2)。そのため、WebSphereでは実用的なパフォーマンスを維持しつつ、ヒープサイズは約25GBまで拡大可能だ。業務アプリケーションなど大きなヒープサイズを利用したい場合には、WebSphereの利用を検討するといいだろう。

図2: Effective Heap Consumption

 この他にもWebSphereではメモリを有効活用する機能として、ランタイム・プロビジョニングも提供されている。これは、稼働させるアプリケーションに必要なコンテナ・サービスのみを選択して起動する機能で、メモリ空間を有効に活用でき、起動時間の短縮や管理負荷の低減などを実現する。

 通常のアプリケーション・サーバーでは、アプリケーションが必要としていなくても、様々なコンテナ・サービスを起動しているのが普通だ。ランタイム・プロビジョニングは、必要な機能を自動的に判断し、必要なコンテナ・サービスだけを起動する。新たなアプリケーションを動かす際に別の機能が必要であれば、それを判断し自動で追加起動されるのだ。

 「WebSphereでは、Javaで作られたモジュールの動的な追加や削除を可能にするための仕様であるOSGi化を、V6.1から進めており、内部がすべてモジュール化されているため、このような柔軟な対応が可能なのです。ランタイム・プロビジョニング機能はV7.0から提供しており、V8.0ではユーザーアプリケーションもOSGi化が可能になり、さらにリソースを効率的に利用できるようになる予定です」(須江氏)。(次ページへ続く

 

WebSphere Application Server 関連情報

クラウド時代に重要となるアプリケーション連携機能

 様々なアプリケーションをクラウド化し利用するような場合、それぞれのアプリケーションを相互に連携する要望が出てくる。その際には、Webサービス(SOAP)を利用し連携させることになる。単にデータ連携するならば、どのアプリケーション・サーバーでも大きな差はないかもしれない。

 しかし、SOAPを使ってアプリケーション連携をする際に、分散トランザクションを行いたければ注意が必要だ。通常は、分散トランザクションのためのロジックを、プログラミングで作り込まなければならず、この手間はかなり大きなものになる。これに対しWebSphereでは、分散トランザクション機能が標準で用意されており、この機能をオンにするだけでいいのだ。

 「WebSphereでは、Webサービスにおける分散トランザクションの3つの仕様をすべてサポートしています。3つともサポートしているのはWebSphereだけです」と須江氏。クラウド化が進めばよりSOAP/HTTPを利用した分散トランザクション要求は増えてくると思われる。その際に、WebSphereのこのWebサービス・トランザクション機能はかなり有効なものとなるだろう。この他にもWebSphereでは簡易ESB機能(SIBus)が内蔵されており、SOA環境でシステムを相互接続する基盤として豊富な実績を持つメッセージング製品WebSphere MQとの相互接続もサポートしている。

 WebSphereで用意されているこれら様々な機能をユーザーが試すために、IBMでは他社製品からの移行キャンペーンを実施している(図3)。マイグレーションツールの無償配布をするだけでなく、移行のためのアセスメントサービスも無償で提供しているのだ。 「通常、WebサービスやServlet、EJBなどのプログラムであれば、9割程度はほぼそのままで移行できます。移行の手間はほぼテストに関わるもので、これは通常の製品バージョンアップと大差ありません」と須江氏は言う。

図3: 無償の移行アセスメントサービス

 もちろん、アプリケーション開発のためならば、WebSphere Application Server for Developerという開発者向け無償版も用意されており、すぐにWebSphereの豊富な機能を試すことが可能だ。自分たちがクラウド上で何をしたいかを改めて見つめ直し、そのために最適なアプリケーション・サーバーの機能は何かを考え、最適な製品選択をお薦めする。

 

WebSphere Application Server 関連情報

この記事は参考になりましたか?

  • Facebook
  • X
  • Pocket
  • note

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/2647 2010/12/07 14:22

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング