質問

エンタープライズアプリケーションアーキテクチャのパターンでは、Martin Fowler氏は書いてます:

  

この本はどのようにあなたについてこれです   エンタープライズアプリケーションを分解する   層にし、これらの層がどのように働きますか   一緒。ほとんど自明でない企業   アプリケーションは、階層化を使用します   何らかの形のアーキテクチャが、一部では   以下のような状況で他のアプローチ、   パイプとフィルターは、貴重なものです。私   そのような状況になりませんが、   のコンテキストに代わりに焦点を当て   階層化アーキテクチャそれはだから   最も広く便利ます。

アプリケーションの非階層化アプリケーション/部品を構築するためにどのようなパターンが存在しますか?金融機関のための統計モデリングエンジンを取ります。そこのデータにアクセスするための層であることが、私は、コードのほとんどは、単層であろうと期待するかもしれません。あなたはまだそのような層に4つのパターンのギャングを見て期待しませんか?どのようにドメインモデルは?あなたは、すべてのOOを使用し、またはそれは純粋に機能的なのでしょうか?

引用は層への代替モデルとして、パイプとフィルタを言及しています。私は、簡単にデータ処理を打破する方法として、パイプを使用して、このようなエンジンを想像することができます。他にどのようなパターンが存在しますか?タスクスケジューリング、結果の集約、または作業配分などの分野のためにそこに共通のパターンがありますか? MapReduceのにはいくつかの選択肢は何ですか?

役に立ちましたか?

解決

私はファウラーは、層状のアプリケーションにフォーカスが層の間の「垂直」のデ結合コミュニケーションを組織上にあるということです何を意味するかと思います。

他のアーキテクチャでは、コンポーネント間で「水平」脱結合通信を組織に焦点を当て、それSOA(サービス指向)、です。 (コンポーネント内の実装では、いずれかのモデルを使用することができます)。これは新しいものではありません。この水平方向のパターンの他のインスタンスは、COM / COM +、CORBA、ワークフロー、および今 "メッセージング" やESBアーキテクチャです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top