溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

2020年部署Web應(yīng)用的方式有哪些

發(fā)布時間:2021-10-26 09:30:38 來源:億速云 閱讀:92 作者:iii 欄目:web開發(fā)

本篇內(nèi)容介紹了“2020年部署Web應(yīng)用的方式有哪些”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

對于初學(xué)者來說,讓我們看看你有哪些選擇:

  • 定期托管(Digital Ocean, AWS, GCP) + Jenkins

  • GitHub動作/Bitbucket管道+ Heroku

  • Travis-CI / Circle-CI

  • 全自動云平臺

1. 常規(guī)云托管+ Jenkins

Jenkins是CI/CD平臺上最大的騎手之一。它是一個自動化的CI/CD軟件,在主代理體系結(jié)構(gòu)上工作。那么什么是主/代理呢?嗯,代理只是軟件的一種花哨說法,它安裝在一臺機器上,用于協(xié)調(diào)[和綁定]不同的構(gòu)建。詹金斯使用一個主機連接和協(xié)調(diào)所有可用的代理。那么,你可以用什么機器來完成這些任務(wù)呢?大多數(shù)情況下,包含docker的虛擬機(vm)是首選,因為這樣做更容易,然而,docker不是強制性的??梢允褂玫钠渌恍┕ぞ呤俏锢?a title="服務(wù)器" target="_blank" href="http://kemok4.com/">服務(wù)器,甚至是運行在Kubernetes上的臨時容器。

優(yōu)點:

  • 它是高度可定制的。

  • 它非常靈活,因為它有超過1.5K的插件。所以對于任何你想嘗試的測試用例,可能有人已經(jīng)為你做過了:D。

  • 即使您是第一個運行特定測試用例的人,您也可以構(gòu)建自己的插件和/或共享庫=>一個友好的社區(qū)。

  • 它支持更快的構(gòu)建和緩存模塊。因為它不強迫我們使用docker鏡像,不像它的競爭對手,服務(wù)中的任何內(nèi)容都可以緩存以備后用,因此它比許多競爭對手更快。

  • 它并不局限于基于Linux的系統(tǒng)。我們也可以使用Windows系統(tǒng)。

缺點:

  • 它是一個非托管服務(wù)。

  • 您需要定期確保服務(wù)器正在運行、SSL已鎖定、有安全補丁或具有internet訪問權(quán)限。

  • 您需要手動解決所有操作問題。例如,如果出現(xiàn)錯誤,則由您跟蹤并修復(fù)它。

2. Bitbucket管道/ Github操作Heroku

Bitbucket的管道是另一個類似于Jenkins的平臺,但更容易使用。Bitbucket管道的工作方式類似于Github的動作;使用Git版本控制系統(tǒng)。您可以根據(jù)所使用的平臺進(jìn)行選擇。

管道是您不希望錯過的一個特性。有了管道,大部分SDLC(軟件開發(fā)生命周期)可以完全自動化。因此,比Jenkins更容易的替代方案(盡管功能有限)是位桶管道。

Bitbucket使用Docker鏡像來運行構(gòu)建。圖像也可以在每個步驟中變化,從而更容易地分離SDLC的每個步驟。

優(yōu)點:

  • 當(dāng)然,這比手動操作要容易,甚至比使用Jenkins(如果您關(guān)心的是簡單性)。

缺點:

  • 它比Jenkins慢,因為它使用Docker圖像。

  • 它不能跨管道共享產(chǎn)品。

  • 管道工作的docker圖像。因此,每次更新時都會得到一個新映像,因此除非緩存,否則不會從以前的管道保存任何數(shù)據(jù)。然而,即使緩存,數(shù)據(jù)也會在7天后丟失。這意味著沒有從遠(yuǎn)程位置獲取的任何文件都將丟失,這對于大型測試(具有大量輸入或基線字段)效果不佳。

3. Travis-CI/ Circle-CI

Travis-CI是社區(qū)中著名的CI服務(wù)機構(gòu)。嗯,很多原因。最主要的原因之一是它對開源項目是免費的,這意味著你只需要為私人項目付費。它的持續(xù)集成環(huán)境還提供了多個運行時,即節(jié)點。JS,  PHP, Python版本,數(shù)據(jù)存儲等等。因此,當(dāng)托管在這個平臺上時,可以輕松地完成針對多個運行時/數(shù)據(jù)存儲的庫測試,而無需承擔(dān)本地安裝它們的負(fù)擔(dān)。

優(yōu)點:

  • Travis是一個易于設(shè)置的平臺。向項目中添加一些基本的構(gòu)建指令,提交代碼……瞧!你的網(wǎng)站是實時的。

  • 大量的服務(wù)和數(shù)據(jù)庫,如MySQL, PostgreSQL, Elasticsearch, Redis, Riak, RabbitMQ,  Memcached已經(jīng)安裝,并等待啟用配置。

  • Travis支持很多部署平臺,如Heroku, Cloud Foundry, OpenShift, Cloud Control,  Nedejitsu等。

  • Travis CI目前是一個成熟的平臺,大部分(如果不是全部的話)常見的抱怨都得到了改進(jìn)。這包括支持顏色的文檔和日志…

缺點:

  • 盡管它對開源項目是免費的,但付費計劃要付出沉重的代價——69美元/月是墊腳石。

  • repos不能在Travis上直接修改[你可以,如果你付錢的話…,所以每次[甚至]需要做一個小的調(diào)整時都去到存儲庫中的文件是相當(dāng)麻煩的。

  • 建立建立矩陣的travis.yml文件相當(dāng)困難。

  • 對于免費計劃,由于基礎(chǔ)設(shè)施有限,構(gòu)建隊列有時會非常長。

4. 自動化的云平臺

最后,對于一個完整而簡單的自動化解決方案,我們可以選擇許多自動化云平臺中的一個。[其中,我個人更喜歡男招待,但這完全是主觀的?;旧希蠖鄶?shù)幕后的編碼工作已經(jīng)為您完成了,因此您可以直接從git存儲庫部署代碼。

所有關(guān)于設(shè)置云服務(wù)器、web服務(wù)器和類似繁瑣任務(wù)的擔(dān)憂都不需要您操心。

在大多數(shù)情況下,你會得到免費的SSL和CDN的最新安全和許多其他津貼。由于比其他服務(wù)更便宜,也更容易使用,這些平臺涵蓋了大部分的使用。所以,除非你有一個專門的團(tuán)隊準(zhǔn)備全力進(jìn)行手工測試,或者想花錢購買其他自動化系統(tǒng),比如Jenkins(它仍然有很多手工工作要做),否則最明智的選擇是使用像Hostman這樣的自動化云平臺。

優(yōu)點:

  • 它很容易設(shè)置。

  • 它是完全自動化的,所以菜單上沒有多少手動操作。

  • 所有的操作問題都將由Hostman等提供者處理。

  • 設(shè)置一次之后,就不需要定期管理了。你可以完全專注于編寫出色的代碼。

  • 它支持開箱即用的自動Git部署,因此您不需要配置。

  • 沒有供應(yīng)商鎖定。

缺點:

  • 與Jenkins等其他平臺相比,其功能可能有限。

  • 到目前為止,現(xiàn)有的語言和框架還有些局限。例如,Hostman支持22個框架。但是像Jenkins這樣的提供商支持100多個插件,如果需要的話,還可以構(gòu)建更多的插件。

“2020年部署Web應(yīng)用的方式有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

web
AI