日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vsscode beego 没有提示_轻松搭建基于 Serverless 的 Go 应用(Gin、Beego 举例)

發(fā)布時間:2025/3/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vsscode beego 没有提示_轻松搭建基于 Serverless 的 Go 应用(Gin、Beego 举例) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

首先介紹下在本文出現(xiàn)的幾個比較重要的概念:

函數(shù)計算(Function Compute): 函數(shù)計算是一個事件驅(qū)動的服務,通過函數(shù)計算,用戶無需管理服務器等運行情況,只需編寫代碼并上傳。函數(shù)計算準備計算資源,并以彈性伸縮的方式運行用戶代碼,而用戶只需根據(jù)實際代碼運行所消耗的資源進行付費。函數(shù)計算更多信息 參考。Fun: Fun 是一個用于支持 Serverless 應用部署的工具,能幫助您便捷地管理函數(shù)計算、API 網(wǎng)關(guān)、日志服務等資源。它通過一個資源配置文件(template.yml),協(xié)助您進行開發(fā)、構(gòu)建、部署操作。Fun 的更多文檔 參考。

備注: 本文介紹的技巧需要 Fun 版本大于等于 3.6.4。

效果預覽

本文涉及到的兩個應用示例部署后的鏈接,點擊預覽效果:

  • Gin 簡單示例:http://gentest.functioncompute.com/ping
  • Beego 簡單示例:http://beegotest.functioncompute.com
  • Gin 博客網(wǎng)站示例:http://mdblog.functioncompute.com
  • 環(huán)境準備

    首先按照 Fun 的安裝文檔里介紹的方法將 Fun 安裝到本機。PS: 本文介紹的方法,不需要安裝 Docker,僅僅安裝 Fun 即可,最簡單的方式就是直接下載可執(zhí)行的二進制文件。

    安裝完成后,可以執(zhí)行 fun --version 檢查 Fun 是否安裝成功。

    示例一:遷移 gin 示例到函數(shù)計算

    首先我們按照官方示例的步驟,安裝 gin(需要 golang 版本在 1.11+ 以上):

    go get -u github.com/gin-gonic/gin

    創(chuàng)建一個 example.go,內(nèi)容填寫如下:

    package mainimport "github.com/gin-gonic/gin"func main() { r := gin.Default() r.GET("/ping", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "pong", }) }) r.Run() // listen and serve on 0.0.0.0:8080 (for windows "localhost:8080")}

    使用下面的命令啟動應用:

    go run example.go

    然后訪問 localhost:8080/ping,可以看到返回結(jié)果如下:

    最后直接使用 fun deploy 即可部署。

    fun deploy

    我們這里詳細介紹下第一次部署流程:

  • Fun 首先檢測到這不是一個 Fun 項目,會提示是否自動創(chuàng)建(按下回車或者輸入 y 即可)
  • 然后 Fun 又會嘗試去檢測應用的啟動端口(函數(shù)計算要求必須啟動在 0.0.0.0:9000),如果不匹配,則會協(xié)助修改:
  • 按下回車,Fun 會自動檢測構(gòu)建生成的可執(zhí)行程序,如果檢測不到,則提示用戶使用指定命令進行編譯
  • 按下回車后,就會自動進行編譯了,編譯完成后,會自動生成 Fun 所需要的 bootstrap 文件以及 template.yml 文件,然后會進行自動部署操作,在部署前,會首先列出本次部署帶來的變更:
  • 如果確認上面的變更沒有問題,再按下回車即可開始資源的部署流程。
  • 部署完成后,可以看到會自動生成一個可以測試訪問的臨時域名 14118335-1911504709953557.test.functioncompute.com,通過這個臨時域名,可以用于開發(fā)、測試時預覽應用。

    使用該臨時域名,訪問應用的 API 接口 14118335-1911504709953557.test.functioncompute.com/ping 測試,效果如下:

    備注:臨時域名僅僅用作演示以及開發(fā),是有時效的,如果用作生產(chǎn),請綁定已經(jīng)備案的域名。

    示例二:遷移 beego 示例到函數(shù)計算

    首先我們按照官方示例的步驟,搭建 beego 應用:

    go get github.com/astaxie/beego

    創(chuàng)建一個 hello.go,內(nèi)容填寫如下:

    package mainimport "github.com/astaxie/beego"func main(){ beego.Run()}

    使用下面的命令啟動應用:

    go run hello.go

    然后訪問 localhost:8080,可以看到返回結(jié)果。

    最后部署,直接使用 fun deploy 經(jīng)歷類似示例一的流程后,就可以通過 Fun 返回的臨時域名預覽應用了。

    示例三:遷移 gin 搭建的博客應用到函數(shù)計算

    示例三我們選擇一個稍微復雜一些的應用,我們按照官方幫助文檔的步驟,搭建一個基于 gin 的 blog 應用:

    1. 克隆項目到本地(直接下載 zip 包也可以):

    git clone https://github.com/tanhe123/mdblog.git

    2. 修改配置文件

    在 config 目錄下,有一個配置文件 config.example.toml,將其復制一份,并修改名稱為 config.toml,然后修改里面的幾個配置:

    • 將 port = 8091 修改為 port = 9000,表示應用啟動時,啟動在 9000 端口。
    • 將 debug = true 修改為 debug = false,表示使用生產(chǎn)版本
    • 將 dir = "logs" 修改為 dir = "/tmp",表示日志寫到 /tmp 目錄(不掛載 NAS 的情況下,函數(shù)計算只有該目錄是可以寫的)

    3. 編譯并運行應用

    go build # 會生成一個 mdblog 的二進制可執(zhí)行程序./mdblog # 直接運行該可執(zhí)行程序

    如果遇到網(wǎng)絡(luò)問題,可以使用 https://goproxy.cn/ 加速。

    訪問 http://localhost:9000 預覽效果

    4. 部署

    最后,本地測試沒問題后,我們需要發(fā)布到函數(shù)計算上,雖然這個示例比起上面兩個代碼層面要復雜很多,但部署流程是一樣的,直接執(zhí)行 fun deploy 然后一路回車即可。

    本示例生成的臨時域名為:https://14118335-1911504709953557.test.functioncompute.com

    打開可以看到如下效果:

    打開具體的一篇博客,效果如下:

    總結(jié)

    我們通過三個示例介紹了如何部署一個 go 應用到函數(shù)計算上,從這三個例子我們可以發(fā)現(xiàn),遷移一個 go 應用到函數(shù)計算是非常容易的,主要精力還是放在了如何在本地配置并啟動應用,然后部署只需要簡單的通過 fun deploy 命令即可。部署完成后,即可享受到函數(shù)計算帶來的彈性伸縮、按量付費、免運維等特性。

    更多參考

  • 輕松搭建基于 Serverless 的 ThinkPHP 應用
  • Funcraft
  • “阿里巴巴云原生關(guān)注微服務、Serverless、容器、Service Mesh 等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢、云原生大規(guī)模的落地實踐,做最懂云原生開發(fā)者的技術(shù)圈。”

    總結(jié)

    以上是生活随笔為你收集整理的vsscode beego 没有提示_轻松搭建基于 Serverless 的 Go 应用(Gin、Beego 举例)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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