2017-04-11 11 views
1

Microserviceの製品にSemVerを適用するためのベストプラクティス/パターンはありますか?各マイクロサービスにはSemVerが、製品全体にはSemVerが必要ですか?SemVerとMicroservices

例 - 私は、SuperDatabaseCore,SuperDatabaseReportsおよびSuperDatabaseSearchと呼ばれる3つのマイクロサービスを持つSuperDatabaseと呼ばれる製品を持っています。

初期リリース: SuperDatabase v1.0.0 SuperDatabaseCore v1.0.0 SuperDatabaseReports v1.0.0 SuperDatabaseSearch v1.0.0

レポートへのマイナーアップデート: SuperDatabaseReport v1.1.0

製品は今SuperDatabase v1.1.0べきか? SuperDatabaseSearch v1.0.1

製品のバージョンを再度変更する必要があります。どのような場合は、後で検索するためのパッチがあることは

?製品バージョンはマイクロサービスから完全に独立しているべきですか?それは全くSemVerを使うべきですか?それとも、バージョン管理がないのでしょうか?

+0

同じデータベースを共有する3つのサービスがある場合は、マイクロサービスの背後にあるアイデアは得られませんでした。サイズはポイントではありません – astef

+0

SuperDatabaseはここでの例として使用される作成済みアプリケーションの名前です。自由に 'ApplicationName-ServiceName'のようなものに置き換えてください。 – ferr

+0

この本はあなたに役立ちます:https://www.amazon.com/Building-Microservices-Sam-Newman/dp/1491950358/ref=pd_sim_14_29?ie=UTF8&dpID=5156gHBSxaL&dpSrc=sims&preST=_AC_UL160_SR122%2C160_&refRID=0081XVQGTK2AQ54GQ21P –

答えて

1

サービスを個別にバージョンアップする必要があります。マイクロサービスアーキテクチャのメリットの1つは、システムの小さな部分を他のコンポーネントにダウンタイムなしに(理論上は)更新および展開できることです。コンポーネントCを更新するときにコンポーネントAとBをバージョンすると、1つだけが変更されたときにすべてのコンポーネントを配備する必要がなくなります。

関連する問題