本申請(qǐng)實(shí)施例提供一種發(fā)布網(wǎng)絡(luò)服務(wù)的方法、裝置、處理器及存儲(chǔ)介質(zhì)。方法包括:接收第一業(yè)務(wù)需求,解析第一業(yè)務(wù)需求,以得到第一業(yè)務(wù)需求的配置數(shù)據(jù),配置數(shù)據(jù)包括待發(fā)布的網(wǎng)絡(luò)服務(wù);確定與配置數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)協(xié)議字節(jié)碼生成器以及數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器;根據(jù)數(shù)據(jù)協(xié)議字節(jié)碼生成器、數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器以及配置數(shù)據(jù)生成字節(jié)碼文件,其中,字節(jié)碼文件包括注冊(cè)網(wǎng)絡(luò)接口時(shí)所需的文件、請(qǐng)求類集合運(yùn)行時(shí)所需的文件,以及響應(yīng)類集合運(yùn)行時(shí)所需的文件;通過(guò)預(yù)設(shè)類加載器加載字節(jié)碼文件,以得到類實(shí)例;運(yùn)行類實(shí)例,以將網(wǎng)絡(luò)接口注冊(cè)到總線;通過(guò)總線發(fā)布網(wǎng)絡(luò)服務(wù)。引入字節(jié)碼生成器省去編譯過(guò)程,字節(jié)碼文件直接通過(guò)預(yù)設(shè)加載器加載并發(fā)布。器加載并發(fā)布。器加載并發(fā)布。
【技術(shù)實(shí)現(xiàn)步驟摘要】
發(fā)布網(wǎng)絡(luò)服務(wù)的方法、裝置、存儲(chǔ)介質(zhì)及處理器
[0001]本申請(qǐng)涉及網(wǎng)絡(luò)通信
,具體涉及一種發(fā)布網(wǎng)絡(luò)服務(wù)的方法、裝置、存儲(chǔ)介質(zhì)及處理器。
技術(shù)介紹
[0002]現(xiàn)有發(fā)布WebService服務(wù),一般是根據(jù)WebService接口調(diào)用請(qǐng)求生成源代碼Java文件,并對(duì)源代碼Java文件編譯部署后再進(jìn)行發(fā)布。且每當(dāng)更新或這增加一個(gè)WebService服務(wù),都需要根據(jù)WebService接口調(diào)用請(qǐng)求解析的配置文件重新拼接源代碼Java文件,在生成新的源代碼Java文件之后,還需要對(duì)Java源代碼再次進(jìn)行編譯部署后才能成功發(fā)布,這種需要反復(fù)編譯后才能發(fā)布WebService服務(wù)的方式效率很低。此外,如果在接口配置發(fā)生變化的情況下,因?yàn)镴ava自帶的類加載器不能多次加載同一目錄的同一個(gè)類,導(dǎo)致源代碼Java文件發(fā)生變化之后,需要重啟整個(gè)程序才能對(duì)新的源代碼Java文件進(jìn)行編譯、加載,并發(fā)布更新后的WebService服務(wù)。這種發(fā)布WebService服務(wù)的方式,需要耗費(fèi)大量時(shí)間反復(fù)重新編譯java源文件,并反復(fù)重啟java程序以對(duì)編譯后的文件進(jìn)行部署和發(fā)布,靈活性極低,無(wú)法滿足現(xiàn)有對(duì)WebService服務(wù)快速發(fā)布的需求。
技術(shù)實(shí)現(xiàn)思路
[0003]本申請(qǐng)實(shí)施例的目的是提供一種發(fā)布網(wǎng)絡(luò)服務(wù)的方法、裝置、存儲(chǔ)介質(zhì)及處理器。
[0004]為了實(shí)現(xiàn)上述目的,本申請(qǐng)第一方面提供一種發(fā)布網(wǎng)絡(luò)服務(wù)的方法,包括:
[0005]接收第一業(yè)務(wù)需求;解析第一業(yè)務(wù)需求,以得到第一業(yè)務(wù)需求的配置數(shù)據(jù),配置數(shù)據(jù)包括待發(fā)布的網(wǎng)絡(luò)服務(wù);確定與配置數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)協(xié)議字節(jié)碼生成器以及數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器;根據(jù)數(shù)據(jù)協(xié)議字節(jié)碼生成器、數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器以及配置數(shù)據(jù)生成字節(jié)碼文件,其中,字節(jié)碼文件包括注冊(cè)網(wǎng)絡(luò)接口時(shí)所需的文件、請(qǐng)求類集合運(yùn)行時(shí)所需的文件,以及響應(yīng)類集合運(yùn)行時(shí)所需的文件;通過(guò)預(yù)設(shè)類加載器加載字節(jié)碼文件,以得到類實(shí)例;運(yùn)行類實(shí)例,以將網(wǎng)絡(luò)接口注冊(cè)到總線;通過(guò)總線發(fā)布網(wǎng)絡(luò)服務(wù)。
[0006]在一個(gè)實(shí)施例中,通過(guò)預(yù)設(shè)類加載器加載字節(jié)碼文件,以得到類實(shí)例包括:預(yù)設(shè)類加載器生成預(yù)設(shè)類加載器實(shí)例;通過(guò)預(yù)設(shè)類加載實(shí)例加載字節(jié)碼文件,以創(chuàng)建類實(shí)例。
[0007]在一個(gè)實(shí)施例中,方法還包括:在網(wǎng)絡(luò)服務(wù)存在更新需求的情況下,卸載發(fā)布的網(wǎng)絡(luò)服務(wù);接收基于更新后的網(wǎng)絡(luò)服務(wù)對(duì)應(yīng)的第二業(yè)務(wù)需求,以發(fā)布更新后的網(wǎng)絡(luò)服務(wù)。
[0008]在一個(gè)實(shí)施例中,卸載發(fā)布的網(wǎng)絡(luò)服務(wù)包括:清理字節(jié)碼文件;將類加載器實(shí)例設(shè)置為無(wú)效引用;卸載類實(shí)例和預(yù)設(shè)類加載器。
[0009]在一個(gè)實(shí)施例中,卸載發(fā)布的網(wǎng)絡(luò)服務(wù)還包括:預(yù)設(shè)類加載系統(tǒng)配置預(yù)設(shè)卸載類加載器,以使網(wǎng)絡(luò)服務(wù)通過(guò)預(yù)設(shè)卸載類加載器卸載。
[0010]在一個(gè)實(shí)施例中,方法還包括:預(yù)設(shè)類加載系統(tǒng)根據(jù)字節(jié)碼文件配置預(yù)設(shè)類加載器,以使字節(jié)碼文件通過(guò)預(yù)設(shè)類加載器生成類實(shí)例。
[0011]在一個(gè)實(shí)施例中,運(yùn)行類實(shí)例,以將網(wǎng)絡(luò)接口注冊(cè)到總線包括:將類實(shí)例與網(wǎng)絡(luò)服
務(wù)的服務(wù)地址綁定,以將網(wǎng)絡(luò)接口注冊(cè)到總線。
[0012]本申請(qǐng)第二方面提供一種處理器,被配置成執(zhí)行上述的發(fā)布網(wǎng)絡(luò)服務(wù)的方法。
[0013]本申請(qǐng)第三方面提供一種發(fā)布網(wǎng)絡(luò)服務(wù)的裝置,包括被配置成執(zhí)行上述的發(fā)布網(wǎng)絡(luò)服務(wù)的方法的處理器。
[0014]本申請(qǐng)第四方面提供一種機(jī)器可讀存儲(chǔ)介質(zhì),該機(jī)器可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有指令,該指令在被處理器執(zhí)行時(shí)使得所述處理器被配置成執(zhí)行上述的發(fā)布網(wǎng)絡(luò)服務(wù)的方法。
[0015]通過(guò)上述技術(shù)方案,能夠使網(wǎng)絡(luò)服務(wù)在發(fā)布之前,無(wú)需再經(jīng)過(guò)復(fù)雜且效率低的源代碼Java文件編譯過(guò)程,引入字節(jié)碼生成器直接生成編譯后的字節(jié)碼文件,并通過(guò)與字節(jié)碼文件對(duì)應(yīng)的預(yù)設(shè)類加載器進(jìn)行加載后直接發(fā)布。該方案省去了編譯步驟,同時(shí)減小了源代碼的大小,能夠有效地提高網(wǎng)絡(luò)服務(wù)的發(fā)布效率。
[0016]本申請(qǐng)實(shí)施例的其它特征和優(yōu)點(diǎn)將在隨后的具體實(shí)施方式部分予以詳細(xì)說(shuō)明。
附圖說(shuō)明
[0017]附圖是用來(lái)提供對(duì)本申請(qǐng)實(shí)施例的進(jìn)一步理解,并且構(gòu)成說(shuō)明書的一部分,與下面的具體實(shí)施方式一起用于解釋本申請(qǐng)實(shí)施例,但并不構(gòu)成對(duì)本申請(qǐng)實(shí)施例的限制。在附圖中:
[0018]圖1示意性示出了根據(jù)本申請(qǐng)實(shí)施例的發(fā)布網(wǎng)絡(luò)服務(wù)的方法的應(yīng)用環(huán)境示意圖;
[0019]圖2示意性示出了根據(jù)本申請(qǐng)實(shí)施例的發(fā)布網(wǎng)絡(luò)服務(wù)的方法的流程示意圖;
[0020]圖3示意性示出了根據(jù)本申請(qǐng)實(shí)施例的類加載系統(tǒng)流程圖;
[0021]圖4示意性示出了根據(jù)本申請(qǐng)實(shí)施例的發(fā)布webservice服務(wù)的流程圖;
[0022]圖5示意性示出了根據(jù)本申請(qǐng)實(shí)施例的發(fā)布網(wǎng)絡(luò)服務(wù)的裝置的結(jié)構(gòu)框圖;
[0023]圖6示意性示出了根據(jù)本申請(qǐng)實(shí)施例的計(jì)算機(jī)設(shè)備的內(nèi)部結(jié)構(gòu)圖。
具體實(shí)施方式
[0024]為使本申請(qǐng)實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,應(yīng)當(dāng)理解的是,此處所描述的具體實(shí)施方式僅用于說(shuō)明和解釋本申請(qǐng)實(shí)施例,并不用于限制本申請(qǐng)實(shí)施例。基于本申請(qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
[0025]本申請(qǐng)?zhí)峁┑陌l(fā)布網(wǎng)絡(luò)服務(wù)的方法,可以應(yīng)用于如圖1所示的應(yīng)用環(huán)境中。其中,客戶端102通過(guò)網(wǎng)絡(luò)與服務(wù)器104通過(guò)網(wǎng)絡(luò)進(jìn)行通信。其中,客戶端102可以但不限于是各種個(gè)人計(jì)算機(jī)、筆記本電腦、智能手機(jī)、平板電腦和便攜式可穿戴設(shè)備,服務(wù)器104可以用獨(dú)立的服務(wù)器或者是多個(gè)服務(wù)器組成的服務(wù)器集群來(lái)實(shí)現(xiàn)。客戶端102用于發(fā)起網(wǎng)絡(luò)服務(wù)請(qǐng)求。服務(wù)器104,用于接收和響應(yīng)客戶端102發(fā)布的網(wǎng)絡(luò)服務(wù)請(qǐng)求并發(fā)布相應(yīng)的網(wǎng)絡(luò)服務(wù)。
[0026]圖2示意性示出了根據(jù)本申請(qǐng)實(shí)施例的發(fā)布網(wǎng)絡(luò)服務(wù)的方法的流程示意圖。如圖2所示,在本申請(qǐng)一實(shí)施例中,提供了一種發(fā)布網(wǎng)絡(luò)服務(wù)的方法,本實(shí)施例主要以該方法應(yīng)用于上述圖1中的服務(wù)器104來(lái)舉例說(shuō)明,包括以下步驟:
[0027]步驟201,接收第一業(yè)務(wù)需求。
[0028]步驟202,解析第一業(yè)務(wù)需求,以得到第一業(yè)務(wù)需求的配置數(shù)據(jù),配置數(shù)據(jù)包括待
發(fā)布的網(wǎng)絡(luò)服務(wù)。
[0029]步驟203,確定與配置數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)協(xié)議字節(jié)碼生成器以及數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器。
[0030]步驟204,根據(jù)數(shù)據(jù)協(xié)議字節(jié)碼生成器、數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器以及配置數(shù)據(jù)生成字節(jié)碼文件,其中,字節(jié)碼文件包括注冊(cè)網(wǎng)絡(luò)接口時(shí)所需的文件、請(qǐng)求類集合運(yùn)行時(shí)所需的文件,以及響應(yīng)類集合運(yùn)行時(shí)所需的文件。
[0031]步驟205,通過(guò)預(yù)設(shè)類加載器加載字節(jié)碼文件,以得到類實(shí)例。
[0032]步驟206,運(yùn)行類實(shí)例,以將網(wǎng)絡(luò)接口注冊(cè)到總線。
[0033]步驟207,通過(guò)總線發(fā)布網(wǎng)絡(luò)服務(wù)。
[0034]網(wǎng)絡(luò)接口是指兩個(gè)終端用于通信的工具,在本技術(shù)方案中,網(wǎng)絡(luò)接口可以是指webservice接口。webservice接口是服務(wù)器本文檔來(lái)自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
【技術(shù)特征摘要】
1.一種發(fā)布網(wǎng)絡(luò)服務(wù)的方法,其特征在于,所述方法包括:接收第一業(yè)務(wù)需求;解析所述第一業(yè)務(wù)需求,以得到所述第一業(yè)務(wù)需求的配置數(shù)據(jù),所述配置數(shù)據(jù)包括待發(fā)布的網(wǎng)絡(luò)服務(wù);確定與所述配置數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)協(xié)議字節(jié)碼生成器以及數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器;根據(jù)所述數(shù)據(jù)協(xié)議字節(jié)碼生成器、所述數(shù)據(jù)傳輸協(xié)議字節(jié)碼生成器以及所述配置數(shù)據(jù)生成字節(jié)碼文件,其中,所述字節(jié)碼文件包括注冊(cè)所述網(wǎng)絡(luò)接口時(shí)所需的文件、請(qǐng)求類集合運(yùn)行時(shí)所需的文件,以及響應(yīng)類集合運(yùn)行時(shí)所需的文件;通過(guò)預(yù)設(shè)類加載器加載所述字節(jié)碼文件,以得到類實(shí)例;運(yùn)行所述類實(shí)例,以將所述網(wǎng)絡(luò)接口注冊(cè)到總線;通過(guò)所述總線發(fā)布所述網(wǎng)絡(luò)服務(wù)。2.根據(jù)權(quán)利要求1所述的發(fā)布網(wǎng)絡(luò)服務(wù)的方法,其特征在于,所述通過(guò)預(yù)設(shè)類加載器加載所述字節(jié)碼文件,以得到類實(shí)例包括:所述預(yù)設(shè)類加載器生成預(yù)設(shè)類加載器實(shí)例;通過(guò)所述預(yù)設(shè)類加載實(shí)例加載所述字節(jié)碼文件,以創(chuàng)建所述類實(shí)例。3.根據(jù)權(quán)利要求1所述的發(fā)布網(wǎng)絡(luò)服務(wù)的方法,其特征在于,所述方法還包括:在所述網(wǎng)絡(luò)服務(wù)存在更新需求的情況下,卸載發(fā)布的網(wǎng)絡(luò)服務(wù);接收基于更新后的網(wǎng)絡(luò)服務(wù)對(duì)應(yīng)的第二業(yè)務(wù)需求,以發(fā)布更新后的網(wǎng)絡(luò)服務(wù)。4.根據(jù)權(quán)利要求3所述的發(fā)布網(wǎng)絡(luò)服務(wù)的方...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:賀慶江,江谷強(qiáng),蘇文鴿,龔濤,易超,
申請(qǐng)(專利權(quán))人:中科云谷科技有限公司,
類型:發(fā)明
國(guó)別省市:
還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。