230

最近、ミドルウェアについて多くの人が話しているのを耳にしましたが、ミドルウェアの正確な定義は何ですか? ミドルウェアを調べると、多くの情報といくつかの定義が見つかりますが、これらの情報と定義を読んでいると、ほとんどすべての「ウェア」は何かの途中にあるようです。では、すべてのものはミドルウェアですか?

または、ミドルウェアではないウェアの例はありますか?

4

15 に答える 15

248

あなたの会社が 4 つの異なる製品を製造していて、クライアントが別の 3 つの異なる会社から別の 3 つの異なる製品を持っているとします。

ある日、クライアントは、すべてのシステムを 1 つの巨大なシステムに統合してみませんか、と考えました。10 分後、彼らの IT 部門は、それには 2 年かかると言った。

あなた (賢明な開発者) は、すべての異なるシステムを統合して、それらを連携させてみませんか?と言いました。クライアント マネージャーがあなたを見つめています... 続けて、私たちはミドルウェアを使用します。すべての異なるシステムの入力/出力、それらが使用するリソースを調査し、適切なミドルウェア フレームワークを選択します。

非技術マネージャーへの説明
ミドルウェア フレームワークが中間にある場合、最初のシステムは X のものを生成し、システム Y と Z はそれらの出力を消費する、などです。

于 2010-05-25T13:15:25.360 に答える
102

ミドルウェアは非常に漠然とした用語です。ある場合の「ミドルウェア」とは、別の場合ではありません。一般に、ミドルウェアとして分類されるものには、次の特性があると予想できます。

  • 主に (通常は排他的に) ソフトウェア。通常、特別なハードウェアは必要ありません。

  • それなければ、それに依存するアプリケーションはアプリケーションの一部としてそれを組み込む必要があり、多くの重複が発生します。

  • ほぼ確実に 2 つのアプリケーションを接続し、それらの間でデータを渡します。

これは、オペレーティング システムとほぼ同じ定義であることがわかります。したがって、たとえば、TCP/IP スタックまたはキャッシングはミドルウェアと見なすことができます。ただし、OS も同じ機能を提供できます。実際、ミドルウェアは、オペレーティング システムに依存する一連のアプリケーションに固有の、オペレーティング システムに対する特別な拡張機能のように考えることができます。ワンランク上のサービスを提供するだけです。

ミドルウェアの例:

  • 分散キャッシュ
  • メッセージ待ち行列
  • トランザクションモニター
  • パケットリライタ
  • 自動バックアップシステム
于 2010-05-25T13:15:25.673 に答える
23

ウィキペディアには非常に良い説明があります: http://en.wikipedia.org/wiki/Middleware

それでは始まります

ミドルウェアは、ソフトウェア コンポーネントまたはアプリケーションを接続するコンピューター ソフトウェアです。このソフトウェアは、1 台以上のマシンで実行されている複数のプロセスが対話できるようにする一連のサービスで構成されています。

ミドルウェアとは何かでいくつか例を挙げます。

于 2010-05-25T13:06:55.427 に答える
20

私が知っている(少なくとも)3つの異なる定義があります

  • ビジネス コンピューティングでは、ミドルウェアはアプリケーションとサービス間のメッセージングおよび統合ソフトウェアです。

  • ゲームでは、ミドルウェアはサードパーティが提供するものであれば何でも構いません

  • (一部の) 組み込みソフトウェア システムでは、ミドルウェアは、アプリケーションが使用するサービスを提供します。サービスは、ハードウェア抽象化レイヤーによって提供される機能から構成されます。アプリケーション レイヤーとハードウェア抽象化レイヤーの間に位置します。

于 2010-05-25T13:13:17.167 に答える
18

簡単に言えば、ミドルウェアは、異種システムを統合するためのサービスを提供するソフトウェア コンポーネントです。

複雑な企業環境では、2 つ以上の企業システムを統合して相互に通信する必要がある場合、多くの課題があります。通常、これらのシステムは、異なる言語 (C++、Java、Cobol など) を使用して異なるプラットフォームで開発されているため、互いの言語を理解することはできません。

ここに、次のようなサービスを提供するミドルウェア ソフトウェアが登場します。

  • あるアプリから別のアプリへのメッセージ形式の変換、
  • セキュリティの世話に加えて、メッセージのルーティングと強化、
  • 暗号化、
  • 検証と
  • これらのメッセージにさまざまなビジネス ルールを適用します。

ミドルウェアの典型的な例は、IBM Message Broker (WMB/IIB)、WESB、Datapower XI50、Oracle Fusion、Mule などのESB製品です。

したがって、ミドルウェアはほとんどの場合、サービスを利用するアプリとサービス プロバイダーのアプリの間に位置し、これらのアプリが互いに通信できるようにします。

于 2016-07-22T22:53:54.843 に答える
14

ミドルウェアは、アプリケーションが着信リクエストにどのように応答するかに関するものです。ミドルウェアは受信リクエストを調べ、このリクエストに基づいて決定を下します。ミドルウェアのみを使用してアプリケーション全体を構築できます。たとえば、ASP.NET は、次の主な HTTP ミドルウェア コンポーネントで構成される Web フレームワークです。

  1. 例外/エラー処理
  2. 静的ファイル サーバー
  3. 認証
  4. MVC ミドルウェア

上の図に示すように、ASP.NET にはさまざまなミドルウェア コンポーネントがあり、着信要求を受け取り、それを C# クラス (この場合はコントローラー クラス) にリダイレクトします。

于 2016-09-04T14:53:20.277 に答える
11

ミドルウェアは、しばしば複雑で既存の別々のプログラムを「接着」するソフトウェアの総称です。ミドルウェアと頻繁に接続されるソフトウェア コンポーネントには、エンタープライズ アプリケーションや Web サービスなどがあります。

于 2016-03-03T05:03:08.583 に答える
3

ミドルウェアの例: CORBA、Remote Method Invocation (RMI)、...

上記の例はすべて、異なるプロセス間の通信を処理できるようにするソフトウェアの一部です (同じマシン上で実行されているか、インターネットなどを介して分散されています)。

于 2010-05-25T13:12:09.293 に答える
2

Webwork に関する私自身の経験から、ミドルウェアはユーザー (Web ブラウザー) とバックエンド データベースの間のものでした。ユーザーが入力したもの (例: iPad の注文、注文を満たすのに十分な数の iPad があるかどうかを確認するなど、魔法のようなビジネス ロジックを実行する) を取得し、それらの変更を反映するようにバックエンド データベースを更新するのはソフトウェアでした。

于 2010-05-25T13:16:16.567 に答える
1

これは、ネットワーク内の分散コンピューティング システムの両側にあるオペレーティング システムとアプリケーションの間のソフトウェア層です。実際、異種ネットワークとソフトウェア システムを接続します。

于 2019-01-05T19:22:50.037 に答える