[プロダクトレビュー]
信頼性とスケーラビリティを高めるアーキテクチャ
WebShpere Application Server 3.5
2.WebSphereの開発環境と周辺ソリューション |
WebSphereの開発環境は、開発/デバッグ/テストのワークロードを大幅に軽減する非常に強力なものです。ブレークポイントやステップ実行を駆使したサーブレット/JSP/EJBのデバッグを行うことはもちろん、ユニット・テストまで終えることができます。なぜなら、開発環境の中でWASとWebサーバが稼働するからです。
WASのアプリケーション開発には、WebSphere Studio(WSS)を使用します。WSSは、サーブレット作成用ウィザードを提供するワークベンチ、HTML/JSPを開発するページ・デザイナー(ホームページ・ビルダーをJSP対応にしたGUIツール)、VAJプロフェッショナル版などがパッケージングされた開発ツールです。サーブレットのひな型をワークベンチのウィザードで出力し、ページ・デザイナーでビジュアルにJSPを作成し、詳細はVisual Age for Java(VAJ)でコーディングするという流れでアプリケーションを開発します。
デバッグ/テストにはVAJのWebSphereテスト環境を利用します。WebSphereテスト環境とは、VAJの中でWASを動かして、アプリケーションを実際のWASに配置することなくテスト実行し、トレース、デバッグを行う機能です。動作を確認しつつ、同時にプログラムを修正できるので迅速なデバッグ/テストが可能です。また、JSP実行モニタを使用すれば、JSPのデバッグも可能になります(画面2)。
画面2 JSP実行モニタでJSPのデバックも可能になる |
EJBを開発する場合には、VisualAge for Java Enterprise Edition(VAJ EE)の利用をお勧めします。VAJ EE のEJB開発環境は、EJBのひな型の自動作成、CMP EntityBeanのスキーマ・マッピング、EJBテスト・クライアントの自動生成、EJBのテスト実行/デバッグ機能を提供します。WebSphereテスト環境と組み合わせることで、テスト、デバッグのワークロードを大幅に軽減します。
EJBのデプロイメント・ディスクリプタの作成/編集機能は、VAJ EEのEJB開発環境にビルト・インされているので、開発者はVAJのGUIの中で直感的にデプロイメント・ディスクリプタを編集することが可能です。EJBの開発にVAJ
EEを用いない場合は、WASが提供するJETACEというGUIツールを利用してデプロイメント・ディスクリプタを作ります。EJBのデプロイメントはWASの管理クライアント、XMLConfig、wscpで可能です。これらのツールを使ってデプロイメントする際に、EJBHomeやEJBObjectの実装クラスなど、実行時に必要なクラスが、WASによって自動的に生成されます。
ファミリー製品が提供するソリューション |
カスタム・メイドのアプリケーションをスクラッチ開発するには時間も手間もかかります。より手軽に利用できるソリューションをお探しの方のために、WebSphereファミリー製品が用意されています(図4)。WebSphereファミリー製品は、WASソリューションの開発期間を短縮します。
図4 WebSphereは基盤技術。拡張基盤からより上位のアプリケーションまで製品が用意されているため、ユーザーのソリューションに適した製品を選択しシステムを構築することができる |
例えば、インターネット・モールに代表されるBtoCソリューションにはWebSphere Commerce Suite(WCS)が最適です。WCSが提供するフレームワークをもとに、迅速にEJBを使用したECサイトを構築できます。汎用的なJava/EJBコンポーネントに興味をお持ちならWebSphere Business Components(WBC)がお役に立てるはずです。WBCは、IBM SanFranciscoをEJB化した再利用可能なビジネス・コンポーネント群です。またWebSphere Transcoding Publisherを利用すれば、携帯電話などPvC端末をも対象にしたWebサイトを容易に構築いただけます。ワークロード・バランスやリバース・プロキシによるパフォーマンス・アップには、長野オリンピックで実績証明済みのWebSphere Edge Serverが最良のソリューションを約束します。
将来動向 |
WASはEJBを中心に機能拡張を予定しています。1つはMessage Bean機能の追加です。Message BeanとはJMSをラップし機能を追加したもので、EJBによるメッセージ・ドリブンなメッセージ受信などが可能になります。次にコモン・コンテナの採用です。IBMには、WASアドバンスド版のEJBコンテナと、WASエンタープライズ版の、CORBAの流れを汲むEJBコンテナがあるのですが、WASの次バージョンではこれらのコンテナが統合されることになりそうです。またXMLによるデプロイメント・ディスクリプタもサポートされる予定です。
さらに将来動向の目玉としてWebサービスに触れねばなりません。Webサービスは新しい分散ソフトウェアのアーキテクチャで、ソフトウェアの部品化の実現を目指すものです。XMLなどを活用しデータ形式を標準化することで、コンポーネント間の疎結合を実現するというのがWebアプリケーションのシナリオです。Webアプリケーション・アーキテクチャの中で中心的な役割を果たす戦略的製品として、WASは機能拡張を続けて行く予定です。
最新のAPIに素早く対応するのも大事ですが、大切な業務を任せるeビジネス・システムには、高パフォーマンス、高可用性(HA)、スケーラビリティ、堅牢なセキュリティを現実のものとするアーキテクチャが必要不可欠です。WASは、このような信頼できるアーキテクチャに裏打ちされた製品といえるでしょう。
(この記事はWAS バージョン3.5.2アドバンスド版をベースに、一部バージョン3.5.3で新規導入される機能を加えて、2001年2月中旬記述しました)
|
|
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|