複数のマイクロサービスで使用される Proto ファイルの維持は困難な場合があります。一貫性を確保し、バージョン管理の問題を回避するには、proto ファイルの一元的なリポジトリを用意することが重要です。
効果的なアプローチの 1 つは、proto ファイル専用の別の git リポジトリを作成することです。これにより、次のことが可能になります。
たとえば、3 つの proto ファイル (Protofile1、Protofile2、および Protofile3) がある場合、それらを集中リポジトリ内の次のディレクトリ構造に保存できます。 :
my-protos ├── Protofile1.proto ├── Protofile2.proto └── Protofile3.proto
マイクロサービス リポジトリは、インポート パスを使用してプロト定義をインポートする必要があります。例:
<code class="go">import "github.com/my-organization/my-protos/Protofile1" import "github.com/my-organization/my-protos/Protofile2" import "github.com/my-organization/my-protos/Protofile3"</code>
go モジュールを使用すると、マイクロサービスが互換性のあるバージョンを確実に取得できます。
一元化された Proto リポジトリにリリースごとにバージョン番号をタグ付けすることを忘れないでください。これにより、バージョン追跡が簡素化され、マイクロサービスが正しいバージョンの proto ファイルを使用できるようになります。
さらに、proto 定義の下位互換性を維持するように努めてください。古いバージョンの proto ファイルが新しいバージョンと互換性がなくなる可能性がある破壊的な変更は避けてください。
以上が複数のマイクロサービス間で Proto ファイルを効果的に同期するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。