まず、分散型アーキテクチャは何ですか

はじめに:

  インターネットの急速な発展と進歩により、様々な産業は急速な発展のチャンスを迎えた、と主力としてのインターネットのこの時代に、この1つのJava言語では、一定の技術革新でもあり、このようなよりなど、当社のインターネット企業複雑なビジネスおよびユーザーの要求要件を満たすことがますます困難に私たちの伝統的なスタンドアロンのプロジェクトように、このいずれかのビジネスの継続性とビジネスの複雑さの出現に応じて分布する、「分散型」の別の哲学から生まれました必要があります。

まず、スタンドアロンのプロジェクトの時代:

  利点:

    、小さなチームや小規模なプロジェクトのために、それはメンテナンスのプロジェクトのためにあるかどうかをユーザーが管理、製品モジュール、統計モジュール、:伝統的なスタンドアロンのプロジェクトの時代に、私たちのような、機能モジュールを一緒に入れているプロジェクトスタンドアロンのプロジェクトチームはすぐに私たちの最初の建設のための完璧なフィット感をセットアップするように、またはプロジェクトの複雑さは、それは、非常に有利です。

  短所:

    しかし、すべては、例えば、絶対的な抵抗はありません:それは、このような電力供給プロジェクトなど大型プロジェクトへの媒体であれば、その上のモジュールの多くは、ユーザモジュール、支払いモジュール、商人モジュール、調整モジュール、統計モジュールとがあり、この時間は、私たちの考えるように我々は上のすべてのこれらのモジュールをまとめる場合は、1つの問題は、何が起こるのだろうか?

    例えば、一つのことは、我々はプロジェクトを更新したい、少しBUGのユーザー権限を変更し、その後、近くに支払わなければならないプロジェクトを再デプロイ、プロジェクト全体の再配備、および私たちの支払い、リアルタイムでの統計データに直面しなければなりませんでした会社やビジネスのための非常に深刻な問題であるモジュール。

    別の例は一日、我々は新しい機能を更新され、本番環境への更新は問題があり、この問題は通常、企業の顧客サービスの電話が鳴りますおそらく、この時間を支払う、付与された決済機能のために採取することはできません実行することはできません、プロジェクト全体につながっています、すぐに上司は、お茶に伝統的なスタンドアロンのプロジェクトは、パケットの漏洩に関するさまざまな問題が発生します。この時間をお聞きします。

    

二、プロジェクトのMavenの構造:

  私たちは、スタンドアロンのプロジェクト開発の強みと弱みのビットは常に更新されたJava Mavenプロジェクト管理は、当社の開発モデルは、大きな変化が浮上していることが表示されますと、私たちは複数のサブに分割されます上記の項目に、そこにあることを理解の上モジュール、および複数のサブモジュールは親モジュールは、新しいバージョンでプロジェクトを担当して、親モジュールを継承しています:

      

  利点:

    1:デカップリングプロジェクトのビジネス層を達成するために、

    2:ビジネス層は、コードの再利用性を向上させることができます。

    注:このアーキテクチャは、個々のサブモジュールは、他に依存したコードのモジュールなので、あなたがサブモジュール他のjarファイルのパッケージをインポートする必要があり、分散アーキテクチャ、および無デカップリング・コードではなく、コードのないデカップリングはありません;

    上記のアーキテクチャは、当社のスタンドアロンのプロジェクトにある程度の問題を解決することができる一人のログインモジュールに問題がある場合、我々は、電力供給の支払いと独立したプロジェクトとして、他のモジュールの羨望、我々だけで再起動するログインモジュールを更新する必要がありますこのプロジェクトは、我々は完全にあなたが管理する必要はありませんモジュールを支払っています。

  短所:

    プロジェクトのような構造は、ビジネス層のデカップリングを解決することができますが、プロジェクトスタンドアロンでなく、そこに問題がある、それは我々のコード・レベルの用語を分離しないということです、我々はプロジェクトことを保証するためにインポートする必要がありますのjarパッケージの多くを必要とします通常動作。

第三に、分散アーキテクチャ:

  我々は(建築だけでなく、スタンドアロンのプロジェクトのMavenのインフラプロジェクトを見た上で:ないこの議論を行いますが、私たちは理解してん、彼らはいくつかの利点だけでなく、いくつかの欠点であり、私たちのますます複雑化に対応するために)ビジネスや肥大化プロジェクト、Java開発者は、「分散型」の代替アーキテクチャを提案した、分散型アーキテクチャの出現は上記の方法の結果にあることは、ビジネスのニーズを満たすことができません。

  我々はまだプロジェクトへの電力供給は、例えば、我々は電気の供給業者の支払いモジュールを持っているように、タイミングタスク管理モジュールと、高い再利用性をポンピングする他のモジュールなどは、我々は関係なく、定期的なタスクを支払うために使用されるどのように多くのシステムやないこの時間別のプロジェクトになりました我々は上記している、私たちはそれを呼び出す必要がありますが、これも問題です。

  たとえば、私たちのプロジェクトは、瓶のダースまたは数十を伴う場合は、次の図3瓶、への電力供給だけではなくだろう、これは私たちの主なプロジェクトにつながる維持するのは非常に面倒で困難であり、この私たちは、プロジェクトでこれらのモジュールを分離が、これらのモジュールのjarファイルを導入しない、これはマイクロサービスアーキテクチャがどのように考慮しなければなりません。

  マイクロサービスアーキテクチャは、私たちのプロジェクトの中で、橋を構築するためにモジュールの数を除いて独立しており、ブリッジ等SpringCoiudやダボ、作ることができるので、我々はこれらのモジュールを分離し、直接取引、および橋の真ん中が直接取引していません、彼は自動的ので、プロジェクトの欠点を維持するために肥大化し、困難につながる、あまりにも多くの瓶の導入を避け、モジュールの呼び出しを決定します。

  

  マイクロサービス、いわゆる我々はマイクロサービスが何であるかを知っているこの時間は、すべてのビジネスにプロジェクトを分割することです、すべてのビジネスの分割ノードは独立したプロジェクトとして、ユーザーは、ミドルウェアの登録を介してサービスにアクセスしますとを達成することが判明、これはマイクロサービスアーキテクチャです。

 

おすすめ

転載: www.cnblogs.com/zouxiangzhongyan/p/11563040.html