2017-04-03 17 views
0

これは(下の)Webアーキテクチャに適していますか?マイクロサービスまたはSOA対応のアーキテクチャ

  1. 2つのサービスフロントエンドサービスとバックエンドサービスがあります。
  2. バックエンドサービスは、従来のMVCではなくAPIのみを提供します。
  3. バックエンドサービスは、各モジュールが独自のconfigを持つ小さなアプリケーションとして機能するため、各モジュールは異なるデータベースエンジンと依存関係を持つことがあります。
  4. モデルとの通信はすべてリポジトリを介して行われます。
  5. どのようなタイプのSQL結合も回避し、結果を得るために複数のクエリを実行することで単純にしておきます。
  6. すべてのリクエストのエントリポイントとなるAPIゲートウェイを使用します。

このようにすれば、将来的にSOAやマイクロサービスに簡単に移行できます。

上記のアプローチについてどう思いますか?

ありがとうございます。

+0

私はアプローチが良いかどうかについて質問しています。なぜそれを保留にするのですか? – justsomedev

答えて

1

は、そのような声明に同意するのは難しいです:

ほとんどすべての成功microserviceストーリーが大きすぎだと私は聞いたほとんどすべてのケースをアップ壊れていたモノリスを開始しましたシステムは、ゼロからマイクロサービスシステムとして構築されたが、深刻な問題に終わった。

モノリスとして始まらなかったマイクロサービスの話があり、反対側には成功し、最初から始まったマイクロサービスの話があります。

私の観点からは、あなたの質問に答えるのは難しいですが、アーキテクチャについて考えるときには、さまざまなアプローチのための長所と短所を認識し、ニーズに基づいて決定する必要があります。

たとえば、モノリス手法では、水平方向のスケーラビリティが難しく(垂直方向も可能ですが)、監視と展開が容易です。
マイクロサービスアプローチの反対側では、水平方向に拡張できますが、展開と監視はより複雑です。また、マイクロサービスのアプローチでは、マイクロサービスがどのように通信するかを見なければなりません(例えば、プロデューサーの消費者パターンを持つブローカー)。

これが役立つことを願っています。

+0

しかし、上記のアプローチについてどう思いますか?それは一般的に良いですか? – justsomedev

+0

なぜリポジトリ経由で通信が行われるのですか(「モデルとの通信はすべてリポジトリ経由で行われます」) – dstar55

+0

私はリポジトリを介して行われたコントローラとモデルの間の通信を意味します – justsomedev

関連する問題