<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          微信發(fā)力了,一鍵部署網(wǎng)站后端!

          共 3196字,需瀏覽 7分鐘

           ·

          2022-02-28 13:06

          大家好,我是魚皮。

          還記得么?之前我全程直播帶大家從 0 到 1 做了一個(gè)包含前端、后端的 表情包網(wǎng)站項(xiàng)目 ,支持搜索表情、自由裁切下載、給表情包配字等功能。

          爸爸表情包網(wǎng)站
          在線編輯下載

          但由于各方面的原因,我暫時(shí)將該網(wǎng)站戰(zhàn)術(shù)下線了。好吧,主要是沒錢(很費(fèi) CDN 流量)和人力維護(hù)了。。。

          不過,我已經(jīng)將該網(wǎng)站的所有源碼 全部開源 了,大家可以拿來自由學(xué)習(xí)。而且今天,我要手把手教大家部署上線網(wǎng)站的后端!

          其實(shí)非常簡(jiǎn)單,使用微信團(tuán)隊(duì)推出的新服務(wù) —— 微信云托管無需購(gòu)買服務(wù)器 ,大概幾分鐘就能完成任何后端項(xiàng)目的上線。

          無服務(wù)器上線后端服務(wù)

          微信云托管介紹

          先介紹一下什么是微信云托管,這是由微信團(tuán)隊(duì)提供的以云原生為基礎(chǔ)的,免運(yùn)維、高可用服務(wù)上云解決方案。用人話說就是平臺(tái)來幫助你托管應(yīng)用,開箱即用,再也不需要自己來搭建服務(wù)器、運(yùn)維管理應(yīng)用的運(yùn)行了。你只管寫代碼開發(fā),剩下的全部交給云托管!

          微信云托管本質(zhì)上是將你的應(yīng)用打包為一個(gè)個(gè)獨(dú)立的容器,然后放到平臺(tái)上運(yùn)行的。因此支持任意編程語言,并且內(nèi)置了主流開發(fā)框架的模板,甚至 一行代碼不寫 ,也能發(fā)布項(xiàng)目,感受容器平臺(tái)的核心流程。

          快速部署

          下面以我的表情包網(wǎng)站后端(Java 的 Spring Boot 項(xiàng)目)為例,演示一下如何使用該平臺(tái)。

          發(fā)布首個(gè)版本

          首先登錄微信云托管平臺(tái),進(jìn)入服務(wù)列表,可以看到已經(jīng)被平臺(tái)托管的服務(wù):

          首次進(jìn)入時(shí)需要用公眾號(hào) / 小程序賬號(hào)創(chuàng)建環(huán)境,沒賬號(hào)可以免費(fèi)申請(qǐng)一個(gè)~

          點(diǎn)擊新建服務(wù),輸入服務(wù)名稱,如果需要讓項(xiàng)目能被外網(wǎng)訪問的話,記得開啟公網(wǎng)訪問:

          創(chuàng)建成功后,進(jìn)入剛剛創(chuàng)建的服務(wù),接下來我們要?jiǎng)?chuàng)建一個(gè)版本(可以理解為項(xiàng)目的版本號(hào))。

          目前支持三種上傳版本的方式,基本已經(jīng)能夠滿足所有場(chǎng)景。

          如果你的項(xiàng)目代碼只存在了自己的電腦上,可以選擇 本地上傳 ;如果項(xiàng)目已經(jīng)發(fā)到了 GitHub、Gitee 等代碼倉(cāng)庫(kù)中,可以直接從代碼庫(kù)拉?。蝗绻呀?jīng)有現(xiàn)成的鏡像了,那可以選擇鏡像拉取。

          由于我的表情包網(wǎng)站后端代碼一直是存到 GitHub 上的,大家可以先 fork 我的倉(cāng)庫(kù)到自己的倉(cāng)庫(kù)中。

          代碼倉(cāng)庫(kù):https://github.com/liyupi/father-backend

          然后選擇 代碼庫(kù)拉取 的方式新建版本,選擇剛 fork 的倉(cāng)庫(kù),端口號(hào)和項(xiàng)目使用的端口號(hào)保持一致(這里是 8081):

          除了上圖的基礎(chǔ)配置外,還可以根據(jù)需要做一些高級(jí)配置,比如指定容器構(gòu)建文件(Dockerfile)的名稱、容器的 CPU 和內(nèi)存配置(最低支持 0.25 核的超細(xì)粒度)、實(shí)例副本數(shù)、擴(kuò)縮容條件等,還可以通過配置環(huán)境變量來區(qū)分測(cè)試和生產(chǎn)環(huán)境:

          高級(jí)配置

          微信云托管平臺(tái)自帶 彈性擴(kuò)縮容 能力,會(huì)根據(jù)訪問流量的大小自動(dòng)增加和減少實(shí)例副本數(shù),上能扛高并發(fā)、下能節(jié)約成本,非常靈活!

          由于我已經(jīng)在項(xiàng)目中寫好了 Dockerfile 文件,所以此處我們不用改任何高級(jí)配置,直接新建即可。

          Dockerfile 文件

          如果你不會(huì)編寫 Dockerfile 文件,可以直接找同框架的項(xiàng)目 “抄” 一個(gè)。或者使用微信云托管提供的界面來定義啟動(dòng)項(xiàng)目的方法:

          新建版本后,微信云托管會(huì)自動(dòng)執(zhí)行拉取代碼、構(gòu)建鏡像等操作,并且可以實(shí)時(shí)查看到日志:

          部署中

          版本創(chuàng)建成功后,可以在版本列表中查看和管理,比如升級(jí)新版本、回退老版本等:

          然后,進(jìn)入 部署發(fā)布 ,首次發(fā)布時(shí)直接點(diǎn)擊 全量發(fā)布 即可:

          發(fā)布成功后,你可以直接通過 web 界面在線調(diào)試后臺(tái)接口,比如測(cè)試一下我的表情包后臺(tái)的 /api/health 健康檢測(cè)接口,看到控制臺(tái)輸出 "ok",表示后臺(tái)已部署成功:

          進(jìn)入監(jiān)控面板,啥都不用干,就能清晰地查看到后臺(tái)接口的調(diào)用情況、容器的 CPU 和內(nèi)存資源占用等圖表,便于分析項(xiàng)目的運(yùn)行狀況。試問如果你自己用服務(wù)器部署項(xiàng)目的話,誰去花時(shí)間給你搞監(jiān)控面板呢?

          服務(wù)監(jiān)控

          還可以在日志面板中查看項(xiàng)目輸出的日志,支持自由檢索,這不比你自己登錄服務(wù)器看日志、或者搞一套日志服務(wù)要方便得多?

          日志檢索

          自動(dòng)發(fā)布

          現(xiàn)在,我們已經(jīng)成功發(fā)布了后臺(tái)的首個(gè)版本。如果之后項(xiàng)目代碼發(fā)生了變更,我們是否還要再重復(fù)執(zhí)行一遍上述操作呢?

          當(dāng)然不用!

          微信云托管提供了流水線功能,我們可以像工廠自動(dòng)化生產(chǎn)一樣,讓項(xiàng)目的構(gòu)建流程也全部自動(dòng)化!

          點(diǎn)擊新建流水線:

          填寫要自動(dòng)發(fā)布的代碼倉(cāng)庫(kù),默認(rèn)該倉(cāng)庫(kù)任何代碼修改都會(huì)觸發(fā)流水線的執(zhí)行,你也可以通過指定目標(biāo)目錄(比如 src)、推送觸發(fā)的分支來減小范圍,比如只是修改了 README 文件,就沒必要觸發(fā)了。還可以設(shè)置定時(shí)自動(dòng)觸發(fā),提高持續(xù)集成的效率。發(fā)布策略建議選擇 構(gòu)建版本 + 鏡像 ,會(huì)比直接全量發(fā)布保險(xiǎn)一些。

          新建流水線

          然后我們隨便改一下倉(cāng)庫(kù)里的代碼,微信云托管會(huì)通過倉(cāng)庫(kù)的 webhook 鉤子感知到代碼的變化,并自動(dòng)觸發(fā)流水線的執(zhí)行:

          自動(dòng)構(gòu)建

          流水線執(zhí)行成功后,我們得到了一個(gè)船新版本。

          灰度測(cè)試

          這次我們?cè)诎l(fā)布前,可以先進(jìn)行一些測(cè)試,防止有 Bug 的代碼直接上線:

          進(jìn)入測(cè)試,我們可以配置測(cè)試的 URL 參數(shù),比如 user = yupi,然后點(diǎn)擊灰度上線,在請(qǐng)求接口時(shí)只需要帶上 ?user=yupi 參數(shù),就可以訪問到最新的測(cè)試版本了,而其他用戶訪問到的還是之前的老版本:

          灰度測(cè)試

          如果你自測(cè)覺得沒啥 Bug 了,可以調(diào)整灰度流量的比例,讓部分同學(xué)可以公開訪問最新版本,沒問題后就可以全量發(fā)布啦:

          其他優(yōu)勢(shì)

          怎么樣,是不是非常方便呢?其實(shí)國(guó)內(nèi)的互聯(lián)網(wǎng)大廠,基本都是使用這種方式來進(jìn)行項(xiàng)目自動(dòng)化發(fā)布的,而不是人工登錄一臺(tái)臺(tái)服務(wù)器,反復(fù)輸入重復(fù)的命令來上線。

          目前,各大云服務(wù)廠商基本也都提供了類似的平臺(tái),但是微信云托管有一個(gè) 絕對(duì)優(yōu)勢(shì) :天然打通微信生態(tài)。你可以免鑒權(quán)、更加輕松地調(diào)用微信其他平臺(tái)的能力,比如云調(diào)用、消息推送、微信支付、小程序服務(wù)等。而且服務(wù)基于億級(jí)用戶同時(shí)在線的微信接入層實(shí)現(xiàn),提供防數(shù)據(jù)爬取、防 DNS 劫持、防 DDoS 攻擊能力。微信用戶可以就近接入,享受更快、更穩(wěn)定的安全網(wǎng)絡(luò)。

          打通微信生態(tài)

          此外,微信云托管還提供了一鍵開通數(shù)據(jù)庫(kù)、對(duì)象存儲(chǔ)、資源監(jiān)控等能力。也就是說,如果你要做一個(gè)后端項(xiàng)目,基本所有的資源都可以在微信云托管中申請(qǐng)和管理,不用到處開通、自行搭建了。

          資源申請(qǐng)和監(jiān)控

          成本

          那相信有很多朋友會(huì)好奇了,這么好用的服務(wù),一定貴的一批吧?

          其實(shí)不然,微信云托管使用 按量計(jì)費(fèi) 模式,通過實(shí)際使用的 CPU、內(nèi)存等資源來計(jì)費(fèi),用多少付多少,不用的項(xiàng)目只要停掉(或者平臺(tái)自動(dòng)縮容),就不會(huì)扣 1 分錢啦!我的編程導(dǎo)航等項(xiàng)目都是用這種模式去部署的,一年下來,的確比買同配置的服務(wù)器要?jiǎng)澦愕枚唷?/p>

          而且告訴大家個(gè)好消息:所有新用戶都能享有 3 個(gè)月的免費(fèi)額度?!完全足夠?qū)W習(xí)和體驗(yàn)了。反正不 piao 白不 piao,建議大家都去試試,感受云原生技術(shù)帶來的高效。

          我也是最近才發(fā)現(xiàn)有免費(fèi)額度,我說怎么沒扣費(fèi)哈哈。。。

          計(jì)費(fèi)模式



          現(xiàn)在體驗(yàn)云托管,輸出實(shí)踐文章,就能免費(fèi)獲得200元代金券!優(yōu)秀文章還有九種鵝廠周邊任選,喜歡的小伙伴可以參與下:https://wj.qq.com/s2/8971509/5219/
          ?? 點(diǎn)擊下方 閱讀原文 就能直達(dá)微信云托管官網(wǎng)了,感興趣的朋友試試吧~(PC端訪問才能使用哦)


          往期推薦


          大廠面試官:我理想中的前端
          對(duì)話Svelte未來,Rust 編譯器?構(gòu)建大型應(yīng)用?
          收藏!史上最全 Vue 前端代碼風(fēng)格指南

          最后


          • 歡迎加我微信,拉你進(jìn)技術(shù)群,長(zhǎng)期交流學(xué)習(xí)...

          • 歡迎關(guān)注「前端Q」,認(rèn)真學(xué)前端,做個(gè)專業(yè)的技術(shù)人...

          點(diǎn)個(gè)在看支持我吧
          瀏覽 107
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  一本高清无码 | 西西4444www无码大胆 | 三级无码视频在线观看 | 午夜久久久无码视频 | 大香蕉俺来也 |