Exchange 2000徹底解剖
>
開発環境としてのExchange 2000 Server
●イベント処理機能
Web Storage Systemには,「Event Sink」と呼ばれるイベント処理機能が備わっている。Event Sinkでは,Web Storage Systemに対する次の操作によって各種イベントが発生する。
- フォルダにアイテムが保存されようとしているとき(OnSyncSaveイベント)
- フォルダにアイテムが保存されたとき(OnSaveイベント)
- フォルダからアイテムが削除されようとしているとき(OnSyncDeleteイベント)
- フォルダからアイテムが削除されたとき(OnDeleteイベント)
- 一定時間が経過したとき(OnTimerイベント)
- ストアの動作が開始されたとき(OnMDBStartUpイベント)
- ストアの動作が終了されようとしているとき(OnMDBShutdownイベント)
開発者は,上記の7種類のイベントを適時捕らえることで,さまざまなアプリケーションを構築できるようになる。
たとえば,アイテムが保存されたときのイベント(OnSaveイベント)を利用すれば,「出張経費」というフォルダに何らかのアイテムが保存されたならば,それを告げるメールを経理担当者に送信する,といった処理を実現できる(Fig.2-8)。
また,Web Storage Systemがさまざまなプロトコルをサポートしていることを利用すれば,業務間連携も可能となる。たとえば,メールで発注書が届いた場合,それはアイテムとして特定のフォルダに保存されることになるから,フォルダにアイテムが保存されたときに発生するイベント(OnSaveイベント)を処理して,メールに記載されている製品の在庫を確認したり,製品管理部に発注操作を依頼したり,請求書を作ったりという処理を実行できる。ただし,フォルダに保存される発注書の書式がまちまちだと,プログラムで処理を実現しづらい。この場合,データ形式としてはXML(eXtended Markup Language)を利用することになるだろう(Fig.2-9)。
Event Sinkのイベントを処理するためには,Visual BasicやVisual C++を用いてイベント処理のプログラムをCOMコンポーネントとして構築することになる。しかし,Exchange 2000では,より簡単にイベント処理のプログラムを構築できるように,「Workflow Event Sink」という仕組みも用意されている。Workflow Event Sinkは,Event Sinkの機能を使ったCOM+アプリケーションとして提供されていて,この機能を用いると「Workflow Designer for Exchange 2000 Server」というツールを使ってGUIでイベント処理を設定できる。また,プログラミング言語としてVBScriptなどのスクリプト言語を用いて開発することもできる。
Fig.2-8 アイテムが保存されたときに発生するEvent Sink

Fig.2-9 Event Sinkを用いたアプリケーションの構築例

Web Storage SystemはExchange 2000によって管理されているので,Exchange 2000が提供するさまざまな機能や管理ツールなどを使い,容易に保守することができる。
まず第一に,Exchange 2000はトランザクション機能をサポートしているから,Web Storage Systemに書き込もうとしたデータは完全に書き込まれるか,あるいはまったく書き込まれないということが保証され,堅牢性を保てる。また,Exchange 2000の管理機能を使えば,フォルダごと定期的にバックアップすることができ,万一の障害に備えることもできる。
そして第二に,Exchange 2000 Enterprise ServerとWindows 2000 Advanced Serverを組み合わせることで,データを格納するサーバーを分散させ,より高い負荷に耐えられるようにすることができる。
| 4/27 |
