Web API を構築し、nServiceBus を使用してすべての非同期および長時間実行プロセスの内部でメッセージングを行っています。
質問は、新しいバージョンの API をスピンオフするときに、新しいキューのセットを使用する必要があるかどうかです。
同様に、API バージョン 1 の場合、
- blobstore.v1.inbound
- blobstore.v1.outbound
- blobstore.v1.timeout
- blobstore.v1.audit
API バージョン 2 の場合、
- blobstore.v2.inbound
- blobstore.v2.outbound
- blobstore.v2.timeout
- blobstore.v2.audit
それとも、複数のメッセージ形式とハンドラーで同じキューのセットを使用するように努めるべきでしょうか (要件の変更とメッセージ形式の進化を想定して)。
アーキテクチャの観点から、長期的には長所と短所を理解しようとしています。個別のキュー セットを使用すると、互換性や社交性を気にすることなく、さまざまな API バージョンを分離して構築、デプロイ、および管理できる柔軟性が得られます。
個人的には後者に傾いていますが、互換性とアップグレードに関する課題は明確に理解されていません。
過去に同様のシナリオに対処したことがある場合は、経験、考え、提案、および推奨事項を共有してください。
あなたの時間は大歓迎です!