DDD、SOA、微服务および微電影 – 一生電視 – 博客园
実際、DDD、SOA、マイクロサービス、およびマイクロカーネルは、この人物が同じサイズの電気を扱う上海をビデオで録画しました。
DDD は実際に特によく理解されており、DDD は駆動設計の分野であり、一種の設計思想です。 OOA、OOD、OOP と比較するのは簡単です。
SOA、マイクロサービス、マイクロカーネルはすべてアーキテクチャ スタイルであり、DDD 里能と他京 3 を合わせて 4 層アーキテクチャと 6 エッジ アーキテクチャと比較されます。
4階建て
4層構造は以下の通りです。
ユーザーインターフェイス層、アプリケーション層、ドメイン層、基盤層に分かれています。 4 層アーキテクチャの目的は、結合を分離することです。
現在、最新のシステムでは、この構造は通常、プロジェクト エンジニアリング モジュールの設計に使用されます。つまり、伝統的なMVCは徐々に淘汰され、現在はこの4層構造が主流となっています。
├─interfaces API接口层
│ ├─dto 视图模型,数据模型定义 vo/dto(大多数情況是一样的)
│ └─controller 控制器,对外提供(Restful)接口
│
├─application 应用层
│ ├─service 应用服务,非核心服务
│ └─*** others
│
├─domain 领域层
│ ├─entity 领域实体、聚合根,充血的领域模型
│ ├─valueobject 领域值对象
│ └─service 领域服务类,一些不能归属某个具体领域模型的行为
│
├─infrastructure 基础设施层
│ ├─po 持久化对象
│ ├─repository 仓储类,持久化接口&实现,可与ORM映射框架结合
│ ├─dao 数据访问对象
│ ├─client feign等调用客户端
└─ └─factory 工厂类,管理仓库,封装细节
エンティティの最下層は全血モデルを採用しており、いくつかの集合体があり、集合体ルートを形成しています。倉庫内で保管層とともに梱包され、DDD工場が倉庫を管理します。
六边形画像
六边形形動在在在線设计公司力别形形是古天地、これらはすべて著者の個人的な理解に加えられたものです。実際、六边形は非常に単純で、ポート アダプタ モードです。外側の六边形はテクノロジー領域、内側の六边形はビジネス領域です。これは、一部のアーキテクチャ全体でよく使用されます。たとえば、いくつかの基本的な要素に基づいて、基本的なコンポーネントが 2 番目の開発です。実際のビジネス実装はコンポーネントの実装であり、専任の保守担当者がいます。ただし、可用性を高めたり自動化したりするために、社内のユーザーに公開されるパッケージング インターフェイスにはチームのメンバーがさらに多くなることがよくあります。
SOA とマイクロサービス アーキテクチャ
SOA の登場は、いくつかの共通モジュールをサービスとして抽出することで、機能の再利用の問題を解決することです。これは開発では使用できないことが以前にわかりました。個別に使用する場合にのみ、各モジュールは共通の jar パッケージを持ちます。これらの共通モジュールは各領域のニーズを満たすことができない場合があるため、上位層の要件には常にいくつかの違いが存在します。この場合、この共通モジュールはあまり良くありません
サービスという概念は、前世紀にすでに作成されていた DDD に注目を集めています。
微細構造
コアシステムは、モジュールのロードやモジュール間通信など、業務に関係のない一般的な機能を担当します。プラグインモジュールは、「学生情報管理」システムにおける「携帯電話」などの特定のビジネスロジックの実装を担当します。
基幹システム(System Nucleus)の機能は一般に比較的安定しており、事業拡大による継続的な変更はなく、プラグインモジュールは事業機能の発展に応じて継続的に拡張する必要があります。マイクロカーネル アーキテクチャの本質は、プラグインの変更の一部をカプセル化することで、迅速かつ柔軟な拡張という目標を達成すると同時に、システム全体の安定性に影響を与えません。一般的な例には、Eclipse IDE、Spring、Dubbo などがあります。
ビジネスフローはモジュールに分割されており、多くのモジュールは再利用できます。 \d\e 4 モジュールのフロー構成。必要なモジュールがない場合は、プラグインの形式で統合され、再構成されます。