TOP
>
システム開発
> Nexaweb:エンタープライズWeb 2.0プラットフォーム
エンタープライズWeb 2.0とNexaweb
第2回:リファレンスアーキテクチャのサービス利用層を知る
著者:
日本ネクサウェブ 福島 竜
2006/12/15
前のページ
1
2
3
次のページ
Nexaweb:エンタープライズWeb 2.0プラットフォーム
EW 2.0リファレンスアーキテクチャの機能と利点について、具体的に把握するためにNexaweb のエンタープライズWeb 2.0プラットフォームをもとにして説明を進めます。
図2は、EW 2.0リファレンスアーキテクチャの構成に、Nexaweb のプラットフォームと開発環境をマッピングしたものです。
図2:リファレンスアーキテクチャの実装例
(画像をクリックすると別ウィンドウに拡大図を表示します)
クライアントティアのアーキテクチャであるユニバーサルクライアントは、Nexaweb Clientによって実装されます。通信はNexaweb IMB、サーバのアーキテクチャであるマッシュアップサーバはNexaweb エンタープライズマッシュアップサーバによって、それぞれ実装されています。
このNexaweb エンタープライズマッシュアップサーバは、サービス提供層を利用してサービスを統合する仕組みを提供するものです。開発環境としてNexaweb Studioが提供されています。ユーザインターフェース(UI)は、宣言型マークアップ言語であるXMLによって表現されます。
これらがNexaweb のエンタープライズWeb 2.0プラットフォームであり、EW 2.0リファレンスアーキテクチャを実装したプラットフォームとなります。Nexaweb Client、Nexaweb IMB、Nexaweb エンタープライズマッシュアップサーバ、Nexaweb Studioについてその概要を個別に説明していきましょう。
Nexaweb Client
Nexaweb Clientは軽量なUIエンジンで、XMLで記述されたUI定義を基に画面を表示し、マウスやキーボードのイベントを管理します。クライアントサイドで実行するアプリケーションのロジック(オブジェクト)もNexaweb Clientで管理することができます。このほかにも多様なクライアント環境(OSやWebブラウザなど)に対応しているので「一度ビルドすればユニバーサルにデプロイ可能(Build Once, Deploy Universally)」な環境を実現することができます。
Nexawebアプリケーションを起動すると、まず最初にNexaweb ClientがWebブラウザによりクライアント側に自動的にダウンロードされます。アプリケーションのサイズは200KB程度(Pack200により圧縮)なので、ダウンロード時のネットワークへの負荷も少なく、ブロードバンドの環境では数秒で起動の準備が整います。その後、JavaやAjax(JavaScript)などで記述されたNexawebアプリケーションがダウンロードされ、画面の描画が行われるとともにアプリケーションが初期化されます。
Nexaweb Clientはネットワーク負荷を低減し機敏なレスポンスを実現するために、差分更新(画面で更新される部分だけを通信する)や圧縮データの通信、非同期通信などをサポートしています。またデータとプログラムコンポーネントをオンデマンドにダウンロードしてキャッシュし、再利用する仕組みも備えています。
Nexaweb Clientによって提供されるサービスには次のようなものがあります。
リッチな UI サービス
アプリケーションオブジェクトのライフサイクル管理サービス
オフライン処理サービス
アプリケーション状態管理
メッセージングサービス
セキュリティサービス
デスクトップ統合サービス
表3:Nexaweb Clientによって提供されるサービス
Nexawebインターネットメッセージングバス(IMB)
インターネットメッセージングバス(IMB)はWebサーバとクライアントの間で双方向かつリアルタイムの通信を行います。さらに高信頼性やセキュア、高性能な通信機能も提供します。特別なプロトコルは必要なく、HTTP/HTTPSという標準的なプロトコル上で動作し、ポートも共通のためファイアウォールやSSL、プロキシサーバ、ダイアルアップ接続、人工衛星ネットワークといった、多様なネットワーク環境やデバイスでも利用可能です。
IMBは通信時に自動的にメッセージを圧縮し、メッセージの送受信に関するネットワークの負荷を低減する仕組みを持っています。そのため、HTMLベースのアプリケーションと比較した場合、メッセージトラフィックを最高90%縮小することも可能なのです。またHTTPSを利用した場合はメッセージングはすべて暗号化されることになり、セキュリティを確保した安全な通信が可能となります。
リライアブルメッセージングを利用することにより、配送の信頼性を高めるとともに、メッセージの配送順序が保証されます。そのためクライアントがネットワーク接続ができない状態では、メッセージを待機させておき、その後接続されたことを検知したらメッセージを順番に配送することができます。
またIMBはサーバからのリアルタイム通信(プッシュ型)とクライアントからのポーリングによる通信(プル型)のどちらもサポートしています。このため開発者は様々なメッセージング方式の中からアプリケーションに最適なメッセージング方法を選択してアプリケーションを開発することができます。
IMBにより、開発者はアプリケーション独自のプロトコルを作成する必要はなく、通信部分の処理実装のコストを削減することができます。また、削減された工数でビジネスロジックの実装に注力することができるのです。
前のページ
1
2
3
次のページ
著者プロフィール
日本ネクサウェブ株式会社
チーフコンサルタント 福島 竜
Interlisp-D(LISPの方言)によってオブジェクト指向を知る。C++、Javaなどにより、金融情報系システムを構築。Forteによる基幹系システム構築などを経て、オブジェクト指向分析・設計の教育、Webアプリケーション開発プロジェクトなどを経験。2004年からNexaweb に関わる。
INDEX
第2回:リファレンスアーキテクチャのサービス利用層を知る
リファレンスアーキテクチャをカバーするNexaweb
Nexaweb:エンタープライズWeb 2.0プラットフォーム
Nexawebエンタープライズマッシュアップサーバ