1. 程式人生 > >持續整合(CI)和持續互動(CD)

持續整合(CI)和持續互動(CD)

一、持續整合(CI——Continuous Integration)

保證新提交的程式碼和已有的程式碼進行整合,使所有人的程式碼保持同步,編譯和測試簽入的程式碼是否通過。

CI過程中,每次產生的構建物(artifact)都放在倉儲(Repo)中。

優點:

  1. 快速得到程式碼質量的快速反饋。
  2. 自動化生成二進位制檔案,並進行版本控制。
  3. 可以從已部署的構建物回溯到相應的程式碼。

微服務(MS)的CI構建方式有3中

  1. 所有微服務的程式碼放在同一個程式碼庫中,且只有一個CI構建。(缺點太多,不建議使用,只要一個出錯,其他服務都不能構建)
  2. 將一個程式碼庫的子目錄各自對映到不同的CI構建中。
  3. 每個微服務都已各自的程式碼庫,也有自己的CI構建。(採用這種最為方便,推薦使用)

     

二、持續互動(CD——Continuous Delivery)

CD中,每次檢查提交是否達到了部署到生產環境的要求,並持續地把資訊反饋出來,把每次的提交當成候選釋出版本來對待。

CD是構建流水線過程中的一種有效的策略。

構建流水線可按階段劃分:

  1. 執行快速測試——針對執行快、涉及範圍小的測試。
  2. 執行耗時測試——針對比較耗時、涉及範圍較大的測試。

關鍵流水線過程: