これまでの経験から、答えは 1 つだけです。ここで大企業が採用しているこのミドルウェアを見てください。ミドルウェアには 1 つの目的があります。相互にやり取りしてビジネスプロセスを合理化できます-私が経験したように、Enteraは、Cで書かれたプロセスを使用するUNIXボックスが作成されたフロントエンドを介してメインフレームシステム(DB2、COBOL)とやり取りする中間層を作成しますPowerBuilder で (会社の名前を挙げているわけではありません!)。
私が与えた説明から、Entera は多くのものをホストするミドルウェアです - エンディアン形式に関係なくデータの流れをスムーズに統合し、異なる言語がミドルウェア ブローカーと対話する機能 (ブローカーはCORBAまたはDCEのようなプロセスで、'The Open Group) に準拠し、特定のポートをリッスンし、IDLによって指定されます。これにより、プロセスがローカルに見えるようになります。Microsoft の .NET Framework でのリモート処理で使用される用語を理解していれば、それほど的外れではありません。ミドルウェアは、コンパイル時にリンクされるスタブを生成し、プロセスの作成、ポートからのホスト、実行時のマルチスレッド、および最新のフロントエンド (.NET、Java など) を管理します。 、PowerBuilder でさえ、言葉では言い表せない VB6...OK...VB.NET でさえ、特定の IP アドレスで指定されたポートへの接続を開くことで対話でき、生成されたスタブを使用して直接対話できます。
明らかに、説明したことから、レガシー システムに新しい命が吹き込まれ、プロセスのスケーラビリティがどのように実現されるかがわかります。これの主な欠点は、数千ドルにも及ぶコスト要因です。請求/請求のバックエンド処理システムとしてメインフレームを使用し、莫大な収益を上げている大企業は、明らかにそのような高価な製品を購入する余裕があります。ビジネス プロセスを長引かせ、それに新しい命を吹き込むミドルウェアを使用することで、ビジネスに付けられた「レガシー」タグを気にすることなく、将来にわたってビジネスをかなりの年数延長することができます。
ちなみに、私はこれを学士号の論文の一部として実行しました。この商用フロントエンドをカバーする情報システムで。FreeDCEと呼ばれる sourceforge で利用可能なミドルウェアのオープン ソース バージョンがありましたが、開発努力は衰退または中止されました。
編集:
@cocotwo: それはまさにミドルウェアが配管ツールであると言ったように...メッセージ指向のミドルウェアは私の知る限りでは聞いていません。フロントエンドのアプリケーション ドメイン内でローカルに表示されているかのように、簡単に操作できます。
メッセージを使用すると、ネットワークの切断が発生した場合にメッセージが安全な保持領域にキューに入れられるという点で、RPC 呼び出しよりも利点があります。フロントエンドが問題なく続行できるように、その側面内でデータのキャッシュが行われている可能性があります。 ...「特定の請求/請求書番号のステータスを更新する」場合に役立ちます-ミドルウェアを介したバックエンドへの一方向の書き込みデータ。
わかりました。大企業は高度なシステム インフラストラクチャを備えており、技術者が 24 時間体制でデータ フローのスムーズな配信を保証する必要があるため、それを考慮に入れる必要があります。小数点以下 6 ナインで最大稼働率 99% を確保するために...ホットスワップ/バランス クラスター/ミラーリング システムを配置して...
一方、RPC では、切断が発生した場合、フロントエンドを再起動するか、切断イベントを処理する必要があります。メッセージキューイングミドルウェアが各メッセージをリアルタイムで処理し、結果をすぐにフロントエンドに返すかどうかによって異なります...
これは、それぞれ (メッセージ キューイングと RPC 関連のミドルウェア) に長所と短所があります...また、サポート、最大稼働時間、開発作業、トレーニングなどのコスト削減要因もあります。ウェアは本当に独占的であり (「The Open Group」のレイアウト/標準に従っているにもかかわらず)、セットアップが複雑で、スクリプトを介して全体を接着する必要があります。