簡介
寶興網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),寶興網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為寶興上千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的寶興做網(wǎng)站的公司定做!
微服務(wù)是一種架構(gòu)風(fēng)格,是以開發(fā)一組小型服務(wù)的方式來作為一個獨立的應(yīng)用系統(tǒng),每個服務(wù)都運行在自已的進程中,服務(wù)之間采用輕量級的HTTP通信機制 ( 通常是采用HTTP的RESTful API )進行通信。這些服務(wù)都是圍繞具體業(yè)務(wù)進行構(gòu)建的,并且可以獨立部署到生產(chǎn)環(huán)境上。這些服務(wù)可以用不同的編程語言編寫,并且可以使用不同的數(shù)據(jù)存儲技術(shù)。對這些微服務(wù)我們只需要使用一個非常輕量級的集中式管理來進行協(xié)調(diào)。
學(xué)習(xí)目標
使用IBM Cloud Developer Tools CLI生成Spring微服務(wù),為其配置和綁定服務(wù),然后部署到IBM Cloud。 了解所生成的代碼,以及如何為你開始添加自己的代碼提供一個很好的起點。
先決條件
安裝IBM Cloud Developer Tools CLI。
預(yù)計時間
閱讀和遵循本操作步驟中的步驟大約需要一個小時。
流程
步驟1.生成代碼
如果你尚未嘗試安裝,則需要按照說明安裝IBM Cloud Developer Tools CLI。 你可以使用如下所示的CLI生成Spring微服務(wù),并將生成的代碼放入當前目錄下的文件夾中。
spring $bx dev create
? Select a pattern:
1. Web App
2. Mobile App
3. Backend for Frontend
4. Microservice
5. MFP
Enter a number> 4
? Select a starter:
1. Basic
Enter a number> 1
? Select a language:
1. Java ? MicroProfile / Java EE
2. Node
3. Python
4. Java ? Spring Framework
Enter a number> 4
? Enter a name for your project> springmsdemo
? Enter a hostname for your project> springmsdemo
? Do you want to add services to your project? y/n
? Select a service:
1. Cloudant NOSQL Database
2. Object Storage
Enter a number> 1
? Select a service plan:
1. Lite
2. Standard
3. Dedicated Hardware
Enter a number> 1
Successfully added service to project.
? Do you want to add another service? y/n
The project, springmsdemo, has been successfully saved into the current directory.
OK
在繼續(xù)之前,讓我們看一下我們剛剛選擇的內(nèi)容和生成的內(nèi)容。 前兩個選擇確定了我們需要微服務(wù),并且它將使用Spring。 提供服務(wù)選項后,事情會變得很有趣。 如果選擇一種服務(wù)(在本例中為Cloudant),則不僅會生成綁定到該服務(wù)的代碼,而且還可以對其進行調(diào)配以供使用。
在docker容器中本地運行應(yīng)用程序時,將使用生成的其他文件。 自述文件是一個很好的起點,它將提供有關(guān)已生成內(nèi)容的概述以及有關(guān)所選服務(wù)的更多信息。
步驟2.運行微服務(wù)
然后使用CLI在本地構(gòu)建和運行微服務(wù)。 構(gòu)建階段將創(chuàng)建一個docker容器,該容器提供構(gòu)建微服務(wù)所需的工具,然后使用第二個容器來運行構(gòu)建的容器。
springmsdemo $bx dev build
Deleting the container named 'bx?dev?springmsdemo?tools' ...
Creating image bx?dev?java?maven?tools based on Dockerfile?tools...
Image will have user added
OK
Creating a container named 'bx?dev?springmsdemo?tools' from that image...
OK
Starting the 'bx?dev?springmsdemo?tools' container...
OK
Building the project in the current directory started at Wed Aug 23 13:49:37 2017
OK
Stopping the 'springmsdemo' container...
The 'springmsdemo' container was not found
Stopping the 'bx?dev?springmsdemo?tools' container...
OK
springmsdemo $bx dev run
Stopping the 'springmsdemo' container...
The 'springmsdemo' container was not found
Creating image springmsdemo based on Dockerfile...
OK
Creating a container named 'springmsdemo' from that image...
OK
Starting the 'springmsdemo' container...
OK
Executing run command started at Wed Aug 23 13:50:17 2017
. _
/\ / ' () \ \ \
( ( )__ | ' | '| | ' \/ ` | \ \ \
\/ )| |)| | | | | || (| | ) ) ) )
' |_| .|| ||| |\, | / / / /
=========||==============|__/=///_/
:: Spring Boot :: (v1.5.4.RELEASE)
2017?08?23 12:50:22.167 INFO 17 ??? [ main] application.SBApplication : Starting SBApplication v1.0?SNAPSHOT on d6e23df14534 with PID 17 (/project/springmsdemo?1.0?SNAPSHOT.jar started by root in /project)
...
(output snipped)
你現(xiàn)在可以通過轉(zhuǎn)至http:// localhost:8080 / v1 / cloudant在本地測試微服務(wù)。
真正的好處是,盡管數(shù)據(jù)庫列表為空,但該列表是從先前提供的Cloudant服務(wù)實例中讀取的。
@RestController
public class Example {
@Autowired @ServiceName(name="springmsdemo?cloudantNoSQLDB?4dce")
private CloudantClient client;
@RequestMapping("v1/")
public @ResponseBody ResponseEntity<String> example() {
List<String> list = new ArrayList<>();
//return a simple list of strings
list.add("Some data");
return new ResponseEntity<String>(list.toString(), HttpStatus.OK);
}
@RequestMapping("v1/cloudant")
public @ResponseBody ResponseEntity<String> cloudant(){
List<String> list = new ArrayList<>();
try {
list = client.getAllDbs();
} catch (NullPointerException e) {
return new ResponseEntity<String>("Server Error", HttpStatus.INTERNAL_SERVER_ERROR);
}
return new ResponseEntity<String>("Available databases : " + list.toString(), HttpStatus.OK);
}
}
步驟3.部署到IBM Cloud
最后一步是將微服務(wù)部署到IBM Cloud。 只需在命令行中輸入bx dev deploy即可。 然后,你可以在IBM Cloud控制臺(以及創(chuàng)建的服務(wù))中查看微服務(wù)。
新聞名稱:如何部署、創(chuàng)建和運行Spring微服務(wù)
網(wǎng)頁URL:http://www.rwnh.cn/article14/ippjde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、建站公司、品牌網(wǎng)站制作、企業(yè)網(wǎng)站制作、品牌網(wǎng)站設(shè)計、外貿(mào)網(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)