官术网_书友最值得收藏!

Semantic versioning

Microservices should implement the Major versioning scheme. Quite often, designers will elect to only implement a Major version number and imply .0 for the minor version as according to the semantic versioning principles http://semver.org a Minor version would generally indicate the addition of functionality that has been implemented in a backwards compatible way. This could be adding additional endpoints to your API. It can be argued that since this would not affect the client's ability to interact with your API you should not worry about Minor versions and only concentrate on major as the client will not need to request a particular version without these additions in order to function.

When versioning APIs I think it is cleaner to drop the minor version and only concentrate on major version. We would take this approach for two reasons:

  • The URI becomes more readable, and dots are only used as network location separators. When using an RPC API dots are only used to separate API.VERSION.METHOD and make everything easier to read.
  • We should be inferring through our API versioning that change is a big thing and has an impact on the function of the client. Internally we can still use Major.Minor; however, this does not need to be something to the client as they will not have the capability to elect to use minor versions of the API.
主站蜘蛛池模板: 东城区| 乐安县| 丹寨县| 井陉县| 高安市| 遂平县| 陆丰市| 防城港市| 古浪县| 嘉荫县| 长葛市| 平江县| 招远市| 临城县| 崇信县| 和平县| 苍山县| 那坡县| 奉新县| 土默特左旗| 亳州市| 区。| 孟津县| 中山市| 霸州市| 渝北区| 无锡市| 绵竹市| 长海县| 达孜县| 新河县| 隆回县| 天津市| 莱芜市| 富源县| 葫芦岛市| 龙里县| 普洱| 那曲县| 碌曲县| 临夏县|