您好,登錄后才能下訂單哦!
這篇文章給大家分享的是如何將Spring PetClinic部署到函數計算平臺,相信大部分人都還沒學會這個技能,為了讓大家學會,給大家總結了以下內容,話不多說,一起往下看吧。
函數計算(Function Compute):函數計算是一個事件驅動的服務,通過函數計算,用戶無需管理服務器等運行情況,只需編寫代碼并上傳。函數計算準備計算資源,并以彈性伸縮的方式運行用戶代碼,而用戶只需根據實際代碼運行所消耗的資源進行付費。函數計算更多信息參考。
Funcraft:Funcraft 是一個用于支持 Serverless 應用部署的工具,能幫助您便捷地管理函數計算、API 網關、日志服務等資源。它通過一個資源配置文件(template.yml),協助您進行開發、構建、部署操作。Fun 的更多文檔參考。
spring-petclinic:PetClinic 是一個 Spring Boot 、Spring MVC 和 Spring Data 結合使用的示例項目,是學習 Spring Boot 經典案例。
Spring 框架是由一些小而美的 Java 框架以松散耦合的方式集成在一起。這些 Java 框架可以獨立或者集成使用以構建許多不同類型的工業級應用程序。PetClinic 示例應用程序是為了說明如何使用 Spring 應用程序框架來構建簡單且功能強大的面向數據庫的應用程序。它演示了 Spring 核心功能用法。
使用控制反轉和 MVC 的 Web 表示層,基于 JavaBeans 的應用程序配置,通過 JDBC,Hibernate 或 JPA 進行數據庫訪問,基于 JMX 聲明式事務管理的應用程序監視,使用 AOP 數據驗證來支持但不依賴于表示層的 Spring 框架提供了大量有用的基礎結構,以簡化應用程序開發工作。
本應用模板使用函數計算的 Custom 運行時和 RDS-MySQL 云服務作為 Spring Boot 應用的運行環境。借助于資源編排服務(ROS)的能力,該模板會自動創建 VPC、VSwitch、SecurityGroup、RDS 和綁定了 HTTP Trigger 的函數,以及綁定到 HTTP 函數的自定義域名,并自動配置好這些服務,以達到迅速上線開箱即用的效果。
注意:
12345.cn-shanghai.fc.aliyuncs.com
,其中 12345
換成您的 AccountID,如果是在國外 Region 可以免去備案環節,請查看更多參考下面我們借助于函數計算的應用中心,快速地將 Spring PetClinic 快速部署到函數計算平臺。
本示例中,我們打算使用函數計算的 Custom 運行時 來移植 Petclinic 項目。顧名思義, Custom Runtime 就是自定義的執行環境, 用戶基于 Custom Runtime 可以完成以下目標:
該應用的架構圖如下:
本項目是在 MacOS 下開發的,涉及到的工具是平臺無關的,對于 Linux 和 Windows 桌面系統應該也同樣適用。在開始本例之前請確保如下工具已經正確的安裝,更新到最新版本,并進行正確的配置。
Fun 工具依賴于 docker 來模擬本地環境。
對于 MacOS 用戶可以使用 homebrew 進行安裝:
brew cask install docker
brew tap vangie/formula
brew install fun
Windows 和 Linux 用戶安裝請參考:
安裝好后,記得先執行 fun config
初始化一下配置。
注意, 如果你已經安裝過了 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
MYSQL_HOST=localhost MYSQL_PORT=3306 MYSQL_DBNAME=petclinic MYSQL_USER=root MYSQL_PASSWORD= ./bootstrap
請在運行上述命令前啟動好本地的 MySQL 數據庫,并將上述 MYSQL_*
的值替換為您本地 MySQL 數據庫的配置。
make deploy
為了獲得更好的開發體驗,建議安裝 Aliyun Serverless VSCode Extension
以上就是如何將Spring PetClinic部署到函數計算平臺的詳細內容了,看完之后是否有所收獲呢?如果想了解更多相關內容,歡迎關注億速云行業資訊!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。