メッセージの順序付けに関するアーキテクチャ上の質問があります。この質問では、トランスポートは無関係なので、指定しません。
Web サイト、CRM、ERP の 3 つのシステムがあるとします。この例では、ERP がデータ所有権の「マスター」システムになります。Web サイトと CRM の両方が、新しい顧客メッセージを ERP システムに送信できます。次に、ERP システムは顧客を追加し、新しく割り当てられたアカウント番号で顧客を公開して、Web サイトと CRM がアカウント番号をローカルの顧客レコードに追加できるようにします。これは非常に簡単なプロセスです。
次は注文に移ります。CRMまたはWebサイトがERPシステムで注文するには、アカウント番号が必要です。ただし、顧客が口座番号を持っていない場合でも、CRM はユーザーが注文することを許可します。(この例では、CRM の動作を変更できないと想定しています) これにより、CRM でアカウント番号が更新される前に、ユーザーが新しい顧客を作成して注文できる可能性が生じます。
このシナリオを処理する最善の方法は何ですか? 注文メッセージをアカウント番号なしで送信し、エラー キューに入れるのが最善でしょうか? CRM エンドポイントにメッセージを保持させ、CRM でアカウント番号が更新されるまで待つ方がよいでしょうか? たぶん、私が考えていなかったものとはまったく違うものでしょうか?
助けてくれてありがとう。