欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法與流程

文檔序號(hào):12362822閱讀:548來源:國知局
基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法與流程

本發(fā)明涉及計(jì)算機(jī)軟件應(yīng)用開發(fā)技術(shù)領(lǐng)域,具體涉及一種基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法。



背景技術(shù):

隨著云時(shí)代的到來,云計(jì)算技術(shù)層出不窮,各種云平臺(tái)的出現(xiàn)是轉(zhuǎn)向云計(jì)算的最重要環(huán)節(jié)之一。CloudFoundry是VMware推出的業(yè)界第一個(gè)開源PaaS云平臺(tái),它支持多種框架、語言、運(yùn)行時(shí)環(huán)境、云平臺(tái)及應(yīng)用服務(wù),使開發(fā)人員能夠在幾秒鐘內(nèi)進(jìn)行應(yīng)用程序的部署和擴(kuò)展,無需擔(dān)心任何基礎(chǔ)架構(gòu)的問題,幾乎成為了云平臺(tái)的標(biāo)準(zhǔn)。它本身是一個(gè)基于Ruby on Rails的由多個(gè)相對獨(dú)立的子系統(tǒng)通過消息機(jī)制組成的分布式系統(tǒng),使平臺(tái)在各層級(jí)都可水平擴(kuò)展。CloudFoundry支持多實(shí)例自動(dòng)部署應(yīng)用功能,開發(fā)人員只需上傳應(yīng)用包即可在CloudFoundry中自動(dòng)部署應(yīng)用,當(dāng)然也可指定實(shí)例個(gè)數(shù)、內(nèi)存大小等參數(shù)。CloudFoundry也提供了整套JavaAPI供java開發(fā)人員使用。

SVN即Subversion,是一個(gè)免費(fèi)的開放源代碼的版本控制系統(tǒng),它采用了分支管理系統(tǒng)。SVN對中文支持好,操作簡單,各種工作人員可輕松上手,方便項(xiàng)目的統(tǒng)一管理。使用界面統(tǒng)一,功能完善,操作方便,眾多企業(yè)的選擇,是一款不錯(cuò)的代碼托管工具。

CloudFoundry作為開源PaaS平臺(tái),功能十分強(qiáng)大,但只能本地上傳應(yīng)用包,未能對應(yīng)用包進(jìn)行有效的統(tǒng)一管理。本發(fā)明是基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法,對需上傳到CloudFoundry的應(yīng)用包進(jìn)行統(tǒng)一的版本管理并提供SVN代碼托管平臺(tái),支持代碼包的上傳、下載,且可以在任何地方進(jìn)行版本操作,方便對代碼的統(tǒng)一管理分配,實(shí)現(xiàn)了可對多租戶進(jìn)行代碼管理、應(yīng)用包版本管理的云應(yīng)用引擎。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明要解決的技術(shù)問題是:本發(fā)明提供一種基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法,涉及基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法,實(shí)現(xiàn)了云應(yīng)用引擎服務(wù)的多租戶版本管理設(shè)計(jì)方法,解決了CloudFoundry無法對上傳的代碼包進(jìn)行統(tǒng)一管理的問題。

本發(fā)明所采用的技術(shù)方案為:

基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法,所述方法以開源的CloudFoundry作為基礎(chǔ)運(yùn)行環(huán)境,采用CloudFoundry開源PaaS云平臺(tái),將云存儲(chǔ)上相應(yīng)的代碼包上傳發(fā)布到CloudFoundry中,通過采用共享數(shù)據(jù)庫、共享數(shù)據(jù)架構(gòu)實(shí)現(xiàn)多租戶管理,提供以SVN版本控制系統(tǒng)為基礎(chǔ)的SVN資源自動(dòng)分配和代碼托管等服務(wù),完成從項(xiàng)目創(chuàng)建到項(xiàng)目打包的自動(dòng)化構(gòu)建過程,并提供應(yīng)用引擎監(jiān)控和多版本管理功能,實(shí)現(xiàn)了對代碼包的統(tǒng)一存儲(chǔ)和管理。

所述采用共享數(shù)據(jù)庫、共享數(shù)據(jù)架構(gòu)實(shí)現(xiàn)多租戶管理實(shí)現(xiàn)過程如下:用戶申請?jiān)茟?yīng)用引擎資源時(shí),通過唯一的用戶標(biāo)識(shí)區(qū)分引擎資源并將引擎信息存入數(shù)據(jù)庫表中,用戶只能訪問其用戶標(biāo)識(shí)所標(biāo)記的應(yīng)用引擎,從而達(dá)到讓多個(gè)租戶共用一個(gè)應(yīng)用程序或運(yùn)算環(huán)境的目的。

用戶獲取云應(yīng)用引擎資源后,將對需要上傳的代碼包進(jìn)行管理,根據(jù)不同需求,采用直接代碼包上傳的代碼管理方式:

該代碼管理方式直接對完整的應(yīng)用包(如war包、zip包等)進(jìn)行分類管理,不進(jìn)行代碼托管等服務(wù),該管理方式根據(jù)所申請應(yīng)用引擎資源的上下文,即引擎的唯一標(biāo)識(shí)進(jìn)行分類管理,通過上傳組件SWFUpload將所需的代碼包上傳至本地或云存儲(chǔ)服務(wù),并為同一個(gè)應(yīng)用引擎下不同的代碼包創(chuàng)建不同的應(yīng)用版本,方便對代碼包的管理。

用戶獲取云應(yīng)用引擎資源后,將對需要上傳的代碼包進(jìn)行管理,根據(jù)不同需求,采用SVN代碼管理方式,利用SVN版本控制系統(tǒng),針對于開發(fā)人員,提供SVN資源和代碼托管等服務(wù),通過搭建一臺(tái)SVN服務(wù)器,提供SVN資源,獲取云應(yīng)用引擎資源后,該管理方式將通過訪問配置文件獲取SVN服務(wù)器信息,使用SSH技術(shù)遠(yuǎn)程控制SVN服務(wù)器創(chuàng)建新的SVN資源庫、獲取并修改用戶權(quán)限配置文件,返回并保存SVN資源地址;并采用SVNKit技術(shù)將開發(fā)框架提交至SVN服務(wù)器,實(shí)現(xiàn)代碼托管;開發(fā)人員可以通過訪問SVN資源地址檢出項(xiàng)目并進(jìn)行代碼開發(fā),然后提交完成的代碼至SVN服務(wù)器;通過SSH技術(shù)遠(yuǎn)程控制SVN服務(wù)器發(fā)布SVN命令將所提交的代碼檢出,并利用ANT技術(shù)執(zhí)行項(xiàng)目中相關(guān)的ANT腳本(默認(rèn)使用build.xml)將項(xiàng)目打成相應(yīng)的war包,然后通過CURL技術(shù)發(fā)布POST請求將war包上傳至本地或云存儲(chǔ)服務(wù),并將存儲(chǔ)信息寫入版本管理的數(shù)據(jù)庫中,實(shí)現(xiàn)了代碼自動(dòng)打包功能,為同一個(gè)應(yīng)用引擎下不同的代碼包創(chuàng)建不同的應(yīng)用版本,方便對代碼包的管理。

對應(yīng)用包的多版本管理服務(wù)實(shí)現(xiàn)過程如下:根據(jù)登錄用戶的唯一用戶標(biāo)識(shí)獲取屬于該用戶的云應(yīng)用引擎列表信息,通過訪問某一應(yīng)用引擎可獲取應(yīng)用的版本信息。

所述方法通過訪問數(shù)據(jù)庫獲取應(yīng)用引擎的申請信息、調(diào)用CloudFoundry提供的JavaAPI獲取應(yīng)用引擎在CloudFoundry中的運(yùn)行狀態(tài)。

所述方法通過訪問數(shù)據(jù)庫獲取當(dāng)前應(yīng)用引擎下的應(yīng)用版本列表信息,根據(jù)需求進(jìn)行版本管理相關(guān)的操作,實(shí)現(xiàn)版本管理,包括:

創(chuàng)建版本:根據(jù)申請時(shí)是否啟用SVN選項(xiàng)來決定是否進(jìn)行SVN代碼托管,然后通過SVN創(chuàng)建應(yīng)用包或直接上傳應(yīng)用包來創(chuàng)建新的版本并展示應(yīng)用包信息(包括下載和上下線操作);

下線:在CloudFoundry中將該應(yīng)用引擎下運(yùn)行的版本實(shí)例刪除;

上線:先將同一引擎下上線的版本下線,再將該版本發(fā)布部署到云平臺(tái)CloudFoundry中,創(chuàng)建應(yīng)用的運(yùn)行實(shí)例,返回是否創(chuàng)建成功,最后通過訪問應(yīng)用引擎的域名訪問該運(yùn)行的應(yīng)用;

下載:下載應(yīng)用包到本地;

刪除:將云存儲(chǔ)上的應(yīng)用包刪除。

所述方法通過調(diào)用CloudFoundry提供的JavaAPI獲取應(yīng)用引擎發(fā)布部署應(yīng)用時(shí)的日志信息,進(jìn)行日志管理,方便檢查和排除錯(cuò)誤等。

所述方法根據(jù)用戶對應(yīng)用引擎的操作將其操作信息保存至數(shù)據(jù)庫操作記錄表中,對操作記錄進(jìn)行管理,方便查看操作是否成功和操作流程。

本發(fā)明的有益效果為:

本發(fā)明為企業(yè)提供了一套完整的應(yīng)用引擎解決方案,提供圖形化操作界面,提供多租戶的應(yīng)用運(yùn)行和隔離機(jī)制,具備應(yīng)用全生命周期的部署、升級(jí)、自動(dòng)化上線、跟蹤監(jiān)控、等機(jī)制;采用兼容性好、使用范圍廣的CloudFoundry云平臺(tái)作為基礎(chǔ)架構(gòu),支持SVN代碼托管,全自動(dòng)化版本管理,智能分配與回收SVN資源庫,自動(dòng)將SVN最新代碼進(jìn)行打包上線運(yùn)行。

附圖說明

圖1為本發(fā)明方法系統(tǒng)框圖;

圖2為基于CloudFoundry實(shí)現(xiàn)版本管理的多租戶應(yīng)用引擎服務(wù)流程圖。

具體實(shí)施方式

下面結(jié)合附圖,根據(jù)具體實(shí)施方式對本發(fā)明進(jìn)一步說明:

實(shí)施例1:

如圖1所示,基于云端服務(wù)器的多租戶版本管理的應(yīng)用引擎設(shè)計(jì)方法,所述方法以開源的CloudFoundry作為基礎(chǔ)運(yùn)行環(huán)境,通過采用CloudFoundry開源PaaS云平臺(tái),將云存儲(chǔ)上相應(yīng)的代碼包上傳發(fā)布到CloudFoundry中,通過采用共享數(shù)據(jù)庫、共享數(shù)據(jù)架構(gòu)實(shí)現(xiàn)多租戶管理,提供云應(yīng)用引擎資源和代碼托管服務(wù),完成從項(xiàng)目創(chuàng)建到項(xiàng)目打包的自動(dòng)化構(gòu)建過程,并提供應(yīng)用引擎監(jiān)控和多版本管理功能,實(shí)現(xiàn)了對代碼包的統(tǒng)一存儲(chǔ)和管理。

實(shí)施例2

在實(shí)施例1的基礎(chǔ)上,本實(shí)施例所述采用共享數(shù)據(jù)庫、共享數(shù)據(jù)架構(gòu)實(shí)現(xiàn)多租戶管理實(shí)現(xiàn)過程如下:用戶申請?jiān)茟?yīng)用引擎資源時(shí),通過唯一的用戶標(biāo)識(shí)區(qū)分引擎資源并將引擎信息存入數(shù)據(jù)庫表中,用戶只能訪問其用戶標(biāo)識(shí)所標(biāo)記的應(yīng)用引擎,從而達(dá)到讓多個(gè)租戶共用一個(gè)應(yīng)用程序或運(yùn)算環(huán)境的目的。

實(shí)施例3

在實(shí)施例2的基礎(chǔ)上,本實(shí)施例用戶獲取云應(yīng)用引擎資源后,將對需要上傳的代碼包進(jìn)行管理,根據(jù)不同需求,采用直接代碼包上傳的代碼管理方式:

該代碼管理方式直接對完整的應(yīng)用包(如war包、zip包等)進(jìn)行分類管理,不進(jìn)行代碼托管等服務(wù),該管理方式根據(jù)所申請應(yīng)用引擎資源的上下文,即引擎的唯一標(biāo)識(shí)進(jìn)行分類管理,通過上傳組件SWFUpload將所需的代碼包上傳至本地或云存儲(chǔ)服務(wù),并為同一個(gè)應(yīng)用引擎下不同的代碼包創(chuàng)建不同的應(yīng)用版本,方便對代碼包的管理。

實(shí)施例4

在實(shí)施例2的基礎(chǔ)上,本實(shí)施例用戶獲取云應(yīng)用引擎資源后,將對需要上傳的代碼包進(jìn)行管理,根據(jù)不同需求,采用SVN代碼管理方式,利用SVN版本控制系統(tǒng),針對于開發(fā)人員,提供SVN資源和代碼托管等服務(wù),通過搭建一臺(tái)SVN服務(wù)器,提供SVN資源,獲取云應(yīng)用引擎資源后,該管理方式將通過訪問配置文件獲取SVN服務(wù)器信息,使用SSH技術(shù)遠(yuǎn)程控制SVN服務(wù)器創(chuàng)建新的SVN資源庫、獲取并修改用戶權(quán)限配置文件,返回并保存SVN資源地址;并采用SVNKit技術(shù)將開發(fā)框架提交至SVN服務(wù)器,實(shí)現(xiàn)代碼托管;開發(fā)人員可以通過訪問SVN資源地址檢出項(xiàng)目并進(jìn)行代碼開發(fā),然后提交完成的代碼至SVN服務(wù)器;通過SSH技術(shù)遠(yuǎn)程控制SVN服務(wù)器發(fā)布SVN命令將所提交的代碼檢出,并利用ANT技術(shù)執(zhí)行項(xiàng)目中相關(guān)的ANT腳本(默認(rèn)使用build.xml)將項(xiàng)目打成相應(yīng)的war包,然后通過CURL技術(shù)發(fā)布POST請求將war包上傳至本地或云存儲(chǔ)服務(wù),并將存儲(chǔ)信息寫入版本管理的數(shù)據(jù)庫中,實(shí)現(xiàn)了代碼自動(dòng)打包功能,為同一個(gè)應(yīng)用引擎下不同的代碼包創(chuàng)建不同的應(yīng)用版本,方便對代碼包的管理。

實(shí)施例5

在1-4任一實(shí)施例的基礎(chǔ)上,本實(shí)施例對應(yīng)用包的多版本管理服務(wù)實(shí)現(xiàn)過程如下:根據(jù)登錄用戶的唯一用戶標(biāo)識(shí)獲取屬于該用戶的云應(yīng)用引擎列表信息,通過訪問某一應(yīng)用引擎可獲取應(yīng)用的版本信息。

實(shí)施例6

在實(shí)施例5的基礎(chǔ)上,本實(shí)施例所述方法通過訪問數(shù)據(jù)庫獲取應(yīng)用引擎的申請信息、調(diào)用CloudFoundry提供的JavaAPI獲取應(yīng)用引擎在CloudFoundry中的運(yùn)行狀態(tài)。

實(shí)施例7

在實(shí)施例5的基礎(chǔ)上,本實(shí)施例所述方法通過訪問數(shù)據(jù)庫獲取當(dāng)前應(yīng)用引擎下的應(yīng)用版本列表信息,根據(jù)需求進(jìn)行版本管理相關(guān)的操作,實(shí)現(xiàn)版本管理,包括:

創(chuàng)建版本:根據(jù)申請時(shí)是否啟用SVN選項(xiàng)來決定是否進(jìn)行SVN代碼托管,然后通過SVN創(chuàng)建應(yīng)用包或直接上傳應(yīng)用包來創(chuàng)建新的版本并展示應(yīng)用包信息(包括下載和上下線操作);

下線:在CloudFoundry中將該應(yīng)用引擎下運(yùn)行的版本實(shí)例刪除;

上線:先將同一引擎下上線的版本下線,再將該版本發(fā)布部署到云平臺(tái)CloudFoundry中,創(chuàng)建應(yīng)用的運(yùn)行實(shí)例,返回是否創(chuàng)建成功,最后通過訪問應(yīng)用引擎的域名訪問該運(yùn)行的應(yīng)用;

下載:下載應(yīng)用包到本地;

刪除:將云存儲(chǔ)上的應(yīng)用包刪除。

實(shí)施例8

在實(shí)施例5的基礎(chǔ)上,本實(shí)施例所述方法通過調(diào)用CloudFoundry提供的JavaAPI獲取應(yīng)用引擎發(fā)布部署應(yīng)用時(shí)的日志信息,進(jìn)行日志管理,方便檢查和排除錯(cuò)誤等。

實(shí)施例9

在實(shí)施例5的基礎(chǔ)上,本實(shí)施例所述方法根據(jù)用戶對應(yīng)用引擎的操作將其操作信息保存至數(shù)據(jù)庫操作記錄表中,對操作記錄進(jìn)行管理,方便查看操作是否成功和操作流程。

實(shí)施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
内乡县| 房山区| 东辽县| 两当县| 永济市| 鲁山县| 资中县| 天水市| 敦煌市| 红桥区| 读书| 无锡市| 阳西县| 衡山县| 图们市| 滦平县| 珠海市| 黎城县| 保靖县| 抚州市| 会宁县| 正安县| 西城区| 云霄县| 灵璧县| 罗平县| 芦山县| 彭泽县| 松江区| 台北市| 重庆市| 涞水县| 金阳县| 林甸县| 维西| 定边县| 贵德县| 土默特左旗| 白山市| 遂平县| 板桥市|