近期Nginx發佈了1.17.0主線版本與1.16.0穩定版本,而且發佈了一篇文章< Introducing NGINX 1.16 and 1.17 >說明Nginx的版本更新策略、推薦分支、1.16.x新增的主要特性、1.17.x的路線規劃。nginx
與Linux內核版本號相似,nginx的版本號也使用奇數偶數區分開發版本(主線版本)與穩定版本。例如1.13.x、1.15.x、1.17.x系列就是開發版本,1.12.x、1.14.x、1.16.x就是穩定版本。安全
關於主線版本與穩定版本的定義,按官方的說法以下:blog
特別注意,穩定版本與開發版本並非軟件質量上的區別,只是特性更新頻率的區別。圖片
關於版本之間如何演進,請參考如下這張圖片:ci
在每一年4月先後nginx的開發會進行一次版本號的推動,發佈新的主線版本與穩定版本,例如近期的1.17.0與1.16.0。在這有幾點值得注意:開發
經過以上版本策略描述,主線版本與穩定版本只存在特性上的不一樣,對於軟件質量要求都是一致的。因此官方的推薦是儘可能使用主線版本。get
同時Nginx的商業版本(NGINX Plus)也老是基於最近的主線版本,並加入閉源的部分代碼,造成商業版本提供服務。同步
可是因爲主線版本的更新週期較快,若是緊跟主線版本有困難,能夠選擇跟進穩定版本,每一年作一次大的更新。開源軟件
在我我的的工做中,咱們團隊交付的組件是基於nginx進行大量的二次開發。每個月同步主線版本將帶來不少工做量。(咱們對nginx代碼進行了大量調整)因此咱們採起了2個活動,保障組件與官方代碼的同步,更好地利用開源軟件優點。class