徹底的な社内実践で磨き上げたESBの実力 〜ESBに求められる最重要ポイント、 信頼性、連携性、生産性〜 |
企業内の既存、新規システムをサービス化し、連携する際に核となるミドルウェアが「エンタープライズ・サービスバス(ESB、注)」だ。ESBには、さまざまなサービスとの接続を可能にする連携性と生産性、そして何より企業にとって重要なデータを取り扱う以上、非常に高い信頼性が求められる。富士通では、ESB製品「Interstage Service Integrator」の信頼性、連携性、生産性を、社内実践を通じて磨き上げてきた。その取り組みを見てみよう。 |
【注】 ESB:Enterprise Service Bus |
社内実践を通じて利用者の声に応え 磨き上げた数々の機能 |
||
SOAを適用する最終目的は、企業活動の全体最適化を実現することにある。ビジネスとITを融合する次世代システム基盤を実現するための基本思想および技術がSOAだ。全体最適化を実現するためには、システムだけでなく、人・プロセス・情報・IT資産を一体化して見える化し、PDCAのサイクルを継続して回し続けていくことのできるシステムが必要だ。
とはいえ、企業活動の全体最適化は、SOAを適用すればすぐに実現できるというほど簡単なものではないのも事実。これに対して富士通では、自社内でのSOA実践を通じてミドルウェア製品の品質を高め、SOA適用の導入パターンを提案することで、段階的な全体最適化を実現するためのアプローチを支援している。
富士通株式会社 ソフトウェア事業本部 ミドルウェア事業統括部 プロジェクト課長 山崎啓氏 |
富士通では、システム技術力強化を目的に、SOAの社内実践の取り組みに力を入れてきた。これまでに、受注・手配システムの再構築やグループ会社における基幹システム再構築といった、社内横断的なプロジェクトが実現されている。
富士通 ソフトウェア事業本部 ミドルウェア事業統括部 プロジェクト課長 山崎啓氏は、「富士通では、SOAの実運用に耐えられるクオリティを実現するため、自社ミドルウェア製品を業務システムに実際に適用してきた。その中からさまざまな改善点を洗い出して、製品にフィードバックしている。富士通自身が徹底的に自社製品を活用することで、SOAに対応したミドルウェア製品の実用性を磨き上げている」と社内実践の重要性を強調している。
事実、SOAに対応したシステム構築を支援するさまざまなミドルウェア製品が商用化されてきた。中でもSOAを適用したシステム構築の際、中核となる製品として位置付けられ、社内実践を通じてブラッシュアップされてきたESB製品が「Interstage Service Integrator」(以降ISI)である。
ISIは、SOA/XML技術をベースに、サービス連携を実現するミドルウェアだ。メインフレームに代表される既存資産から新規パッケージまでをサービス化してシームレスに連携させ、段階的なシステム再構築を実現する。富士通では、自社内でこの製品を徹底活用することにより、
1) | 信頼性 |
2) | 連携性 |
3) | 生産性 |
という最も重要な3つのポイントを強化してきた。その具体的な内容を紹介しよう。
図1 ISIが備える連携性(クリックすると拡大します) |
CORBA:Common Object Request Broker Architecture | FTP:File Transfer Protocol |
JMS:Java Message Service | JCA:J2EE Connector Architecture |
RMI:Remote Method Invocation | MQD:Message Queue Director |
SOAP:Simple Object Access Protocol |
厳しい利用者の声に応える 高いメッセージの保証機能 |
||
まず何よりも求められるポイントは「信頼性」だ。山崎氏は、「ESB製品にとって、信頼性は最も重要な要素。ESBは、実際に企業活動を支えるためのサービス基盤であり、途中で止まってしまったり、不具合が起こるような事態は絶対にあってはならない」と強調する。
「富士通では、メインフレームの時代から基幹システム向けのミッションクリティカルなミドルウェアを手掛けてきた実績を持っている。そこで培ったノウハウを生かしながら、社内実践を積み重ねることで、ESB製品に安全に運用できる信頼性の高い機能を盛り込んでいる」(同氏)。
ISIが備えている高い信頼性を象徴する機能は主に2つある。
1つ目の機能が「メッセージ保証機能」だ。ISIでは、受信したメッセージをいったん蓄積し、高信頼メッセージ制御機構によってメッセージの順番を確実に制御している。万一メッセージ不達が発生した場合には再送機能が働く。
山崎氏は、「社内実践の運用段階で特に厳しい指摘を受けて開発したのが、この機能だ。ESB製品は、企業活動で利用する大事なデータを預かって次のシステムに渡していくという、非常に重要な役割を果たしている。信頼性を高めるためには、ESBに預けられたメッセージはESBで必ず保証する仕組みが必要だと利用者からは指摘された。これを受けて、ISIでは、預かったメッセージを内部に蓄積することで、万が一、送ったはずのメッセージが相手システムに到達しなかった場合にも、ESBで保証できる仕組みを整えた」という。
メッセージの順番を制御し、受信した順番どおりに送信できる機能は、確実な運用を支援するために重要なポイントとなる。業務によっては、メッセージの送信順にきちんと処理が行われないと業務に支障が生じるケースがあるからだ。例えば、後に処理するべき伝票を先に処理してしまうと、在庫の引き当てが逆になってしまうといったトラブルも発生しかねない。
ISIは、高信頼メッセージ制御機構によってメッセージの順番を保証するとともに、送信するメッセージの順番を保証できないエラーが発生した場合には送信を停止する機能も備えている。メッセージの不達や送信停止が発生した際には、運用管理コンソールからリトライが可能。簡単な操作でメッセージの再送信を行うことができる。
図2 ISIの高信頼メッセージ制御機構 |
信頼性に関してもう1つ注目したい機能が、Webベースの運用管理コンソールだ。これによって、連携業務ごとの呼び出し量や平均処理時間などを監視し、状況に応じた運用変更が可能となる。
業務内容や業務規模によっては、複数のサーバにISIを導入して運用することもあるだろう。このとき、運用管理コンソールで複数サーバの運用状況を把握するのは運用管理者にとっても骨の折れる作業だ。
ここでも社内実践から利用者の声が取り入れられた。富士通が提供している総合運用管理ソフトウェア「Systemwalker」と連携することで、複数のサーバで稼働しているISIの運用状況を1カ所に集約できる。この結果、運用管理者の負荷をいっそう軽減し、少ない労力で複数のサーバを管理することができる。さらにこの連携では、サービスの利用量、および負荷の増減をグラフや表の形でグラフィカルに比較することも可能だ。
「ESBに多種多様なメッセージが不規則なタイミングで入ってくると、どの処理がどこで滞留しているのか、どの処理に最も負荷が掛かっているのかなど、トラブル原因が非常に分かりにくくなる」という、社内実践を行う中で浮上してきた指摘に対応するために開発されたのがこれらの機能だ。
アダプタの利用で多彩なシステムと連携 日本特有問題の「文字化け」にも対処 |
||
2つ目のポイントは連携性だ。ESBには、新旧さまざまなサービス間のインターフェースの違いを吸収して、うまく連携させていくことが求められる。ISIでは、メディエーション機能によって、入出力メッセージの形式やプロトコルを必要に応じて変換し、差異を吸収してサービスをつないでいくことができる。
ISIは、SOAPやJMS、RMIといったオープンな標準準拠の通信プロトコルなどと、メインフレームで使われてきたCORBAやMQD(富士通が規定する非同期通信機能)の両方に対応する。さらに、メッセージに対応できないバッチ型システムの場合も、FTPを利用して連携可能だ。このように豊富な連携方法を用意することにより、新規アプリケーション、既存アプリケーション、区別なく各システムとの柔軟な連携が可能となっている。
富士通では、アダプタ製品のラインアップを順次追加し、連携可能なシステムを拡大している。最新バージョンでは、J2EE標準であるJCA(J2EE Connector Architecture)への対応を拡充し、標準アダプタを提供することで開発を効率化する。さらに、他社のパッケージやメインフレームとの接続を可能にするアダプタ製品の種類を増やしている。
このほか、新旧のシステムが混在するシステム間連携においては、「文字化け対応」という日本特有のニーズにも応える必要がある。この課題に対しても、社内実践の中で、JIS2004に対応できる文字管理ソフトウェア「Interstage Charset Manager」と連携することで、安全に文字コード変換を行う方法を提供している。
「特に自治体などでは人名を入力する機会が多い。ISIでは、JIS2004に未対応の既存システムでも、Interstage Charset Managerのコード変換や入力制限機能により、安心してクライアントを導入できるようになる」(山崎氏)という。
サービス連携テスト支援機能を通じて SOA連携システムのテスト作業を効率化 |
||
3つ目のポイントである「生産性」では、テスト作業の支援機能を提供し、開発の効率化を実現している。
SOAの業務システム開発では、外部のさまざまなシステムとの連携が必要となってくる。このため、単体で動作できていたシステムのテストとは異なり、連携先の動作環境がそろうまで、確認作業を進めることができなかった。それが難しい場合は、自社内に連携先と同等の模擬システムを構築して連携テスト作業を行うことになるが、そうなると今度は多大な労力とコストが掛かっていた。
こうした課題に対し、ISIでは、外部システムとの連携ルールの確認作業を単体で行える「サービス連携テスト支援機能」により、テスト作業の効率化を実現している。
具体的には、外部システムとの連携に必要なESBへの入力データやサービス呼び出しによる結果データをあらかじめ用意しておくことで、作成した定義のテスト実行が可能となる。これにより、連携テストのためにわざわざ模擬システムなどを構築することなく、ISI単体で、一連の変換定義、サービス呼び出しの実行テストを行うことができる。
「実際に利用者からは、テスト支援機能を活用することで、3カ月で実運用を開始でき、通常より早く業務システムを構築することができたという声が挙がっている」(山崎氏)といい、現場のSEから高く支持されている機能だ。
このように、社内実践の中で利用者の目を通ることにより厳しく磨き上げられ、優れた信頼性、連携性、生産性を兼ね備えているISI。これからSOA適用に取り組む企業にとって、真の全体最適化を実現するための重要なカギを握っているESB製品といえるだろう。
富士通 Interstage 関連リンク |
||||||
|
提供:富士通株式会社
企画:アイティメディア 営業本部
制作:@IT 編集部
掲載内容有効期限:2008年10月23日
富士通 Interstage 関連リンク |
||||||||||||
|