日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【Jenkins】持续集成、持续交付与持续部署

發(fā)布時間:2024/2/28 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Jenkins】持续集成、持续交付与持续部署 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

持續(xù)集成、持續(xù)交付與持續(xù)部署,都是軟件開發(fā)過程中的很好的實踐。

一、持續(xù)部署

  • 裝修廚房
    全部裝好之后發(fā)現(xiàn)燈不亮,電路有問題;冷熱水裝反了,管路有問題。這些問題要解決就必須把地磚、墻磚拆掉——一個環(huán)節(jié)有問題,其他環(huán)節(jié)跟著返工。
    那怎么做會好一些呢?任何安裝完成及時測試,確保其可以正常工作。

  • 項目開發(fā)
    開發(fā)過程中進行單元測試能夠通過,但是部署到服務(wù)器上運行出現(xiàn)問題。
    那怎么做會好一些呢?僅僅單元測試還不夠,各個模塊都必須能夠在服務(wù)器上運行。

  • 關(guān)注點
    持續(xù)部署的關(guān)注點在于項目功能部署至服務(wù)器后可以運行,為下一步測試環(huán)節(jié)或最終用戶正式使用做好準備。

  • 二、持續(xù)集成

  • 裝修廚房
    裝修廚房時我們需要鋪地磚,如果把所有地磚都切好再拿去鋪就會發(fā)現(xiàn):每一塊地磚單獨看都是好的,但是實際鋪的時候,把所有地磚整合起來,發(fā)現(xiàn)和廚房地面總體尺寸不匹配,邊邊角角的地磚需要重新切,時間和物料成本陡然升高。
    那怎么做會好一些呢?切一塊鋪一塊,根據(jù)需要的尺寸來切,盡早發(fā)現(xiàn)尺寸變化,避免返工。

  • 項目開發(fā)
    各個小組分別負責各個具體模塊開發(fā),本模塊獨立測試雖然能夠通過,但是上線前夕將所有模塊整合到一起集成測試卻發(fā)現(xiàn)很多問題,想要解決就需要把很多代碼返工重寫而且仍然有可能有問題,但現(xiàn)在時間很可能不夠了。
    那怎么做會好一些呢?經(jīng)常性、頻繁的把所有模塊集成在一起進行測試,有問題盡早發(fā)現(xiàn),這就是持續(xù)集成。

  • 關(guān)注點
    持續(xù)集成的關(guān)注點在于盡早發(fā)現(xiàn)項目整體運行問題,盡早解決。

  • 三、持續(xù)交付

  • 裝修廚房
    全部裝修好之后房屋主人來驗收,各項功能都正常,但是水龍頭的樣式主人不喜歡,灶臺的位置主人不滿意,要求返工。
    那怎么做會好一些呢?房屋主人隨時查看裝修進度,施工團隊及時調(diào)整。

  • 項目開發(fā)
    項目的各個升級版本之間間隔時間太長,對用戶反饋感知遲鈍,無法精確改善用戶體驗,用戶流失嚴重。
    那怎么做會好一些呢?用小版本不斷進行快速迭代,不斷收集用戶反饋信息,用最快的速度改進優(yōu)化。

  • 關(guān)注點
    持續(xù)交付的關(guān)注點在于研發(fā)團隊的最新代碼能夠盡快讓最終用戶體驗到。

  • 四、總體目標

    好處1:降低風險
    一天中進行多次的集成,并做了相應(yīng)的測試,這樣有利于檢查缺陷,了解軟件的健康狀況,減少假定。

    好處2:減少重復過程
    產(chǎn)生重復過程有兩個方面的原因,一個是編譯、測試、打包、部署等等固定操作都必須要做,無法省略任何一個環(huán)節(jié);另一個是一個缺陷如果沒有及時發(fā)現(xiàn),有可能導致后續(xù)代碼的開發(fā)方向是錯誤的,要修復問題需要重新編寫受影響的所有代碼。
    而使用 Jenkins 等持續(xù)集成工具既可以把構(gòu)建環(huán)節(jié)從手動完成轉(zhuǎn)換為自動化完成,又可以通過增加集成頻次盡早發(fā)現(xiàn)缺陷避免方向性錯誤。

    好處3:任何時間、任何地點生成可部署的軟件
    持續(xù)集成可以讓您在任何時間發(fā)布可以部署的軟件。從外界來看,這是持續(xù)集成最明顯的好處,我們可以對改進軟件品質(zhì)和減少風險說起來滔滔不絕,但對于客戶來說,可以部署的軟件產(chǎn)品是最實際的資產(chǎn)。利用持續(xù)集成,您可以經(jīng)常對源代碼進行一些小改動,并將這些改動和其他的代碼進行集成。如果出現(xiàn)問題,項目成員馬上就會被通知到,問題會第一時間被修復。不采用持續(xù)集成的情況下,這些問題有可能到交付前的集成測試的時候才發(fā)現(xiàn),有可能會導致延遲發(fā)布產(chǎn)品,而在急于修復這些缺陷的時候又有可能引入新的缺陷,最終可能導致項目失敗。

    好處4:增強項目的可見性
    持續(xù)集成讓我們能夠注意到趨勢并進行有效的決策。如果沒有真實或最新的數(shù)據(jù)提供支持,項目就會遇到麻煩,每個人都會提出他最好的猜測。通常,項目成員通過手工收集這些信息,增加了負擔,也很耗時。持續(xù)集成可以帶來兩點積極效果:
    (1) 有效決策:持續(xù)集成系統(tǒng)為項目構(gòu)建狀態(tài)和品質(zhì)指標提供了及時的信息,有些持續(xù)集成系統(tǒng)可以報告功能完成度和缺陷率。
    (2) 注意到趨勢:由于經(jīng)常集成,我們可以看到一些趨勢,如構(gòu)建成功或失敗、總體品質(zhì)以及其它的項目信息。

    好處5:建立團隊對開發(fā)產(chǎn)品的信心
    持續(xù)集成可以建立開發(fā)團隊對開發(fā)產(chǎn)品的信心,因為他們清楚的知道每一次構(gòu)建的結(jié)果,他們知道他們對軟件的改動造成了哪些影響,結(jié)果怎么樣。


    Jenkins的使用

    不使用持續(xù)集成:

    使用持續(xù)集成:


    Jinkins+SVN持續(xù)集成環(huán)境搭建

    準備工作:開啟三個虛擬機,一個跑SVN,一個跑Kenkins,一個跑項目


    Jenkins+GitHub持續(xù)集成環(huán)境搭建

    總結(jié)

    以上是生活随笔為你收集整理的【Jenkins】持续集成、持续交付与持续部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。