本篇文章為大家展示了如何通過Serverless應用控制臺輕遷移SpringBoot應用上云,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
創(chuàng)新互聯(lián)公司服務項目包括安定網(wǎng)站建設(shè)、安定網(wǎng)站制作、安定網(wǎng)頁制作以及安定網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,安定網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到安定省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
Spring Boot 是由 Pivotal 團隊提供的框架,用來簡化新 Spring 應用的初始搭建以及開發(fā)過程。該框架使用了特定的方式來進行配置,從而使開發(fā)人員不再需要定義樣板化的配置,因此 Spring Boot 框架也成為了當前非常流行的框架。
如今,您可以通過 Serverless 應用控制臺,進行極其簡單的代碼改造,就可以遷移您的 SpringBoot 應用上云。
低改造成本:Serverless 組件自動幫助用戶完成框架上云的適配轉(zhuǎn)換,用戶只需聚焦業(yè)務核心代碼,進行極少的代碼改造,即可完成云端部署。
應用層級資源展示與管理:部署成功后,用戶可以方便地通過 Serverless 應用控制臺將查看和管理創(chuàng)建的云端資源,無需多個頁面切換,實現(xiàn)多資源的集中管理。
代碼持續(xù)更新:支持持續(xù)構(gòu)建,當文件夾上傳到的內(nèi)容有更新時,可以自動觸發(fā)重新部署。
應用層級監(jiān)控圖表:提供了應用層級的監(jiān)控能力,用戶不僅可以看到每個資源的調(diào)用次數(shù)、錯誤次數(shù)等信息,還可以看到應用層級的監(jiān)控指標,方便運維。
根據(jù)以下教程步驟,快速體驗框架遷移:
部署前提:賬號已開通 Serverless Framework:https://console.cloud.tencent.com/sls與 Coding DevOps:https://console.cloud.tencent.com/coding服務,登陸控制臺,會自動為您進行開通,開通流程不會產(chǎn)生何費用。
進入 Serverless 應用控制臺,點擊【新建應用】,進入應用創(chuàng)建頁。
填入您的應用名稱,【創(chuàng)建方式】選擇【應用模版創(chuàng)建】,選擇 Spring Boot 框架。
點擊【創(chuàng)建】,Serverless 控制臺會自動開始為您部署應用,部署完成后,進入應用詳情頁,可以 查看創(chuàng)建的云上資源、監(jiān)控日志、部署記錄等信息,也支持在“開發(fā)部署”頁面修改配置,重新部署。
代碼改造:若使用自己的 SpringBoot 項目代碼進行部署需要進行如下的改造
在項目 pom.xml
中新增騰訊云函數(shù)(需為0.0.3版本)和fastjson的依賴(若自身項目有所用版本可不修改,若無則請依賴最新版本)。
<dependency> <groupId>com.tencentcloudapi</groupId> <artifactId>scf-java-events</artifactId> <version>0.0.3</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.73</version> </dependency>
在項目的根目錄的 src/main/java
的任意目錄下新增一個執(zhí)行方法入口,例如:在 src/main/java/example 目錄下新建 MyHandler.java
package example; import com.qcloud.scf.runtime.AbstractSpringHandler; public class MyHandler extends AbstractSpringHandler { @Override public void startApp() { System.out.println("start app"); // 修改為springboot項目的入口主函數(shù),例如: 入口為DemoApplication class下的main函數(shù) DemoApplication.main(new String[]{""}); } }
將代碼用 Maven 創(chuàng)建 jar
部署包或者用 Gradle 創(chuàng)建 zip 部署包。
需要將項目所有的依賴包一起打包,例如使用Maven
則推薦用maven-shade-plugin
進行打包,修改pom.xml
中的plugin
:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.1.1</version> <configuration> <createDependencyReducedPom>false</createDependencyReducedPom> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> </execution> </executions> </plugin>
云函數(shù)關(guān)于 Maven 部署包的說明:點此查看 云函數(shù)關(guān)于 Gradle 部署包的說明:點此查看
修改 serverless.yml 文件中的 projectJarName
配置為打包后的 .jar/.zip 文件名,.jar/.zip 文件需要放與 serverless.yml 同級。
如:使用 Maven 打包后生成了 code.jar 文件,則 projectJarName 為
code.jar
修改 serverless.yml 文件中的 functionConfig
的 handler
配置,格式為 [package].[class]::mainHandler
其中 package 為更多層時用 .
連接。
如:如新建的 MyHandler.java 放在了 src/main/java/example 中,則 handler 為
example.MyHandler::mainHandler
進入 Serverless 應用控制臺,點擊【新建應用】,進入應用創(chuàng)建頁。
填入您的應用名稱,【創(chuàng)建方式】選擇【導入已有項目】,選擇 Spring Boot 應用,直接導入您的已有項目。選擇【本地上傳】代碼上傳方式,上傳Maven 創(chuàng)建 jar 部署包或者用 Gradle 創(chuàng)建 zip 部署包。
點擊【創(chuàng)建】,Serverless 控制臺會自動開始為您部署應用,部署完成后,進入應用詳情頁,可以查看創(chuàng)建的云上資源、監(jiān)控日志、部署記錄等信息,也支持在“開發(fā)部署”頁面修改配置,重新部署。
應用創(chuàng)建完成后,可以在應用詳情頁,完成查看項目具體信息,主要支持以下幾部分管理功能。
在【資源列表】頁,支持查看當前應用為您創(chuàng)建的云資源,并查看基本配置信息。
在應用詳情頁頂部,單擊【開發(fā)部署】,您可以輕松地實現(xiàn)應用的配置修改與二次部署上傳,目前SpringBoot 僅框架支持 本地上傳方式。
同時,您也可以在該頁面修改應用配置信息,點擊“保存”完成重新部署。
在【應用監(jiān)控】頁面,您可以查看項目部署后輸出的基本信息、項目請求次數(shù)、項目報錯統(tǒng)計等多項監(jiān)控指標,方便您輕松實現(xiàn)項目的管理運維。
在【部署日志】頁面,可以看到【通過控制臺部署】或【自動觸發(fā)】的部署日志,以及部署結(jié)果。
到這里,只需要極其簡單的代碼改造,就完成了將您的 Spring Boot 應用遷移至 Serverless 的操作,并可以進行應用的監(jiān)控管理,持續(xù)開發(fā),享受 Serverless 帶來的眾多優(yōu)勢。
上述內(nèi)容就是如何通過Serverless應用控制臺輕遷移SpringBoot應用上云,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞名稱:如何通過Serverless應用控制臺輕遷移SpringBoot應用上云
文章源于:http://m.newbst.com/article26/gdidcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、微信公眾號、品牌網(wǎng)站設(shè)計、做網(wǎng)站、App設(shè)計、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)