システムAとシステムBの2つ(ただし、将来的にはさらに増える予定)の完全に分離されたシステムとしましょう。
各システムのすべての情報にinformationIDがあるとしましょう。informationIDが異なるシステムで同じになるのを止めるものは何もありません。すべてのシステムで情報を一義的に識別するのは、Source-informationIDのペアです。
システムAからシステムBに情報をエクスポートする必要があるとします。次に、同じ情報をシステムBからエクスポートして、システムAに再インポートし、それが同じものであることを認識できるようにする必要があります。情報の。
人々の経験でこれを行うための最良の方法は何ですか?
これは私がやろうと思っていることです:
- メッセージキューを備えたシステム間にメッセージバスを設定します。
- 変更を監視し、キューに送られるメッセージにラップされたコマンドを生成する各システムのエンドポイントを設定します(たとえば、情報の一部が作成/削除/更新された場合)。
- システム名に依存せず、一般的な階層のみに依存するように、作成/削除/更新コマンドに関連するエンドポイントにランクを割り当てます。これにより、各システムが他のシステムについて知る必要がなくなります。
- 各エンドポイントに更新/削除/作成コマンドのしきい値を割り当てて、しきい値の要件を満たしていないコマンドが除外され、処理されないようにします。
ただし、これでは、originalSource+originalSourceIDを持ち歩く必要があるという事実は解決されません。
助けていただければ幸いです。