如何快速部署SpringPetClinic到函數(shù)計(jì)算平臺(tái)-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到青秀網(wǎng)站設(shè)計(jì)與青秀網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋青秀地區(qū)。

簡(jiǎn)介

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

函數(shù)計(jì)算(Function Compute): 函數(shù)計(jì)算是一個(gè)事件驅(qū)動(dòng)的服務(wù),通過(guò)函數(shù)計(jì)算,用戶無(wú)需管理服務(wù)器等運(yùn)行情況,只需編寫代碼并上傳。函數(shù)計(jì)算準(zhǔn)備計(jì)算資源,并以彈性伸縮的方式運(yùn)行用戶代碼,而用戶只需根據(jù)實(shí)際代碼運(yùn)行所消耗的資源進(jìn)行付費(fèi)。函數(shù)計(jì)算更多信息 參考。

Funcraft:Funcraft 是一個(gè)用于支持 Serverless 應(yīng)用部署的工具,能幫助您便捷地管理函數(shù)計(jì)算、API 網(wǎng)關(guān)、日志服務(wù)等資源。它通過(guò)一個(gè)資源配置文件(template.yml),協(xié)助您進(jìn)行開(kāi)發(fā)、構(gòu)建、部署操作。Fun 的更多文檔 參考。

spring-petclinic: PetClinic 是一個(gè) Spring Boot 、Spring MVC 和 Spring Data 結(jié)合使用的示例項(xiàng)目,是學(xué)習(xí) Spring Boot 經(jīng)典案例。

如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)
如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

Spring 框架是由一些小而美的 Java 框架以松散耦合的方式集成在一起。這些 Java 框架可以獨(dú)立或者集成使用以構(gòu)建許多不同類型的工業(yè)級(jí)應(yīng)用程序。PetClinic 示例應(yīng)用程序是為了說(shuō)明如何使用 Spring 應(yīng)用程序框架來(lái)構(gòu)建簡(jiǎn)單且功能強(qiáng)大的面向數(shù)據(jù)庫(kù)的應(yīng)用程序。它演示了 Spring 核心功能用法。

使用控制反轉(zhuǎn)和 MVC 的 Web 表示層,基于 JavaBeans 的應(yīng)用程序配置,通過(guò) JDBC,Hibernate 或 JPA 進(jìn)行數(shù)據(jù)庫(kù)訪問(wèn),基于 JMX 聲明式事務(wù)管理的應(yīng)用程序監(jiān)視,使用 AOP 數(shù)據(jù)驗(yàn)證來(lái)支持但不依賴于表示層的 Spring 框架提供了大量有用的基礎(chǔ)結(jié)構(gòu),以簡(jiǎn)化應(yīng)用程序開(kāi)發(fā)工作。

如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

本應(yīng)用模板使用函數(shù)計(jì)算的 Custom 運(yùn)行時(shí)和 RDS-MySQL 云服務(wù)作為 Spring Boot 應(yīng)用的運(yùn)行環(huán)境。借助于 資源編排服務(wù)(ROS)的能力,該模板會(huì)自動(dòng)創(chuàng)建 VPC、VSwitch、SecurityGroup、RDS 和綁定了 HTTP Trigger 的函數(shù),以及綁定到 HTTP 函數(shù)的自定義域名,并自動(dòng)配置好這些服務(wù),以達(dá)到迅速上線開(kāi)箱即用的效果。

注意:

  1. 需要提供一個(gè)域名(支持二級(jí)域名),如果部署在國(guó)內(nèi) Region 該域名需要在阿里云備案,然后把域名的 CNAME 記錄指向 12345.cn-shanghai.fc.aliyuncs.com,其中 12345 換成您的 AccountID,如果是在國(guó)外 Region 可以免去備案環(huán)節(jié), 請(qǐng)查看更多參考

  2. 模板創(chuàng)建的 RDS-MySQL 云服務(wù)選用了最便宜的按量付費(fèi)實(shí)例,費(fèi)用大約為:¥0.236/小時(shí),使用前需要確保賬戶有 100 元的余額,并且試用完成以后建議通過(guò) ROS 控制臺(tái)刪除該應(yīng)用,以免產(chǎn)生超出預(yù)期的費(fèi)用。

快速開(kāi)始

下面我們借助于函數(shù)計(jì)算的應(yīng)用中心,快速地將 Spring PetClinic 快速部署到函數(shù)計(jì)算平臺(tái)。

  1. 打開(kāi)函數(shù)計(jì)算 Spring PetClinic 應(yīng)用詳情頁(yè)。如果您尚未開(kāi)通函數(shù)計(jì)算服務(wù)可能需要先,開(kāi)通服務(wù)是免費(fèi)的,另外函數(shù)計(jì)算有每月免費(fèi)額度,試用服務(wù)不會(huì)產(chǎn)生費(fèi)用。
    如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

  2. 滾動(dòng)到 Spring PetClinic 應(yīng)用詳情頁(yè)的最底部,點(diǎn)擊“立即部署”按鈕。
    如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

  3. 填寫應(yīng)用名稱和域名,其中域名需要先去設(shè)定 DNS 的 CNAME 記錄,然后點(diǎn)擊“部署”按鈕。
    如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

  4. 稍等片刻,等到部署成功以后,拷貝 URL 網(wǎng)址。
    如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

  5. 在瀏覽器中打開(kāi)上面拷貝的網(wǎng)址
    如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

工作原理

本示例中,我們打算使用函數(shù)計(jì)算的 Custom 運(yùn)行時(shí) 來(lái)移植 Petclinic 項(xiàng)目。顧名思義, Custom Runtime 就是自定義的執(zhí)行環(huán)境, 用戶基于 Custom Runtime 可以完成以下目標(biāo):

  • 可以隨心所欲持定制個(gè)性化語(yǔ)言執(zhí)行環(huán)境(例如 Golang、Lua、Ruby)以及各種語(yǔ)言的小版本(例如 Python3.7、Nodejs12 )等,打造屬于自己的自定義 Runtime

  • 現(xiàn)有的 Web 應(yīng)用或基于傳統(tǒng)開(kāi)發(fā) Web 項(xiàng)目基本不用做任何改造,即可將項(xiàng)目一鍵遷移到函數(shù)計(jì)算平臺(tái)

該應(yīng)用的架構(gòu)圖如下:

如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)

定制化開(kāi)發(fā)

依賴工具

本項(xiàng)目是在 MacOS 下開(kāi)發(fā)的,涉及到的工具是平臺(tái)無(wú)關(guān)的,對(duì)于 Linux 和 Windows 桌面系統(tǒng)應(yīng)該也同樣適用。在開(kāi)始本例之前請(qǐng)確保如下工具已經(jīng)正確的安裝,更新到最新版本,并進(jìn)行正確的配置。

  • Docker

  • Funcraft

Fun 工具依賴于 docker 來(lái)模擬本地環(huán)境。

對(duì)于 MacOS 用戶可以使用 homebrew 進(jìn)行安裝:

brew cask install docker
brew tap vangie/formula
brew install fun

Windows 和 Linux 用戶安裝請(qǐng)參考:

  1. https://github.com/aliyun/fun/blob/master/docs/usage/installation.md

安裝好后,記得先執(zhí)行 fun config 初始化一下配置。

注意, 如果你已經(jīng)安裝過(guò)了 funcraft,確保 funcraft 的版本在 3.2.1 以上。

$ fun --version
3.2.1

初始化

git clone https://github.com/awesome-fc/spring-petclinic-for-serverless
cd spring-petclinic-for-serverless

編譯打包

mvn package -Dmaven.test.skip=true

本地運(yùn)行

MYSQL_HOST=localhost MYSQL_PORT=3306 MYSQL_DBNAME=petclinic MYSQL_USER=root MYSQL_PASSWORD= ./bootstrap

請(qǐng)?jiān)谶\(yùn)行上述命令前啟動(dòng)好本地的 MySQL 數(shù)據(jù)庫(kù),并將上述 MYSQL_* 的值替換為您本地 MySQL 數(shù)據(jù)庫(kù)的配置。

部署

make deploy

為了獲得更好的開(kāi)發(fā)體驗(yàn),建議安裝 Aliyun Serverless VSCode Extension

看完上述內(nèi)容,你們對(duì)如何快速部署Spring PetClinic到函數(shù)計(jì)算平臺(tái)有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝大家的支持。

網(wǎng)頁(yè)題目:如何快速部署SpringPetClinic到函數(shù)計(jì)算平臺(tái)-創(chuàng)新互聯(lián)
鏈接地址:http://muchs.cn/article42/dpjehc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)外貿(mào)建站網(wǎng)站建設(shè)、搜索引擎優(yōu)化網(wǎng)站導(dǎo)航、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)