本發(fā)明涉及開(kāi)發(fā)平臺(tái)與大數(shù)據(jù)的設(shè)計(jì)領(lǐng)域,尤其涉及一種基于OSGI的應(yīng)用系統(tǒng)嵌入應(yīng)用服務(wù)器的方法。
背景技術(shù):
隨著云計(jì)算以及大規(guī)模數(shù)據(jù)中心的飛速發(fā)展,越來(lái)越的企業(yè)和政府不會(huì)選擇搭建自己的數(shù)據(jù)中心而選擇租用云數(shù)據(jù)中心的服務(wù),成為經(jīng)濟(jì)社會(huì)發(fā)展的趨勢(shì)。這就為云數(shù)據(jù)中心的安全性及數(shù)據(jù)處理帶來(lái)巨大挑戰(zhàn),例如,企業(yè)租用云數(shù)據(jù)中心的服務(wù)來(lái)運(yùn)行企業(yè)業(yè)務(wù)并存放所有的數(shù)據(jù),這些業(yè)務(wù)和數(shù)據(jù)關(guān)系到企業(yè)的正常運(yùn)行并且有企業(yè)的核心機(jī)密,一旦數(shù)據(jù)中心的關(guān)鍵數(shù)據(jù)遭到非法讀取、核心業(yè)務(wù)不能正常運(yùn)行會(huì)給企業(yè)帶來(lái)無(wú)法挽回的損失。因此這就給云數(shù)據(jù)中心的安全性設(shè)計(jì)帶來(lái)巨大難題。一方面云數(shù)據(jù)中心業(yè)務(wù)眾多,環(huán)境復(fù)雜為安全性設(shè)計(jì)帶來(lái)挑戰(zhàn):數(shù)據(jù)中心內(nèi)業(yè)務(wù)數(shù)量眾多且多種多樣,不同的業(yè)務(wù)對(duì)安全級(jí)別要求不一致。另一方面,開(kāi)發(fā)效率低,難以在規(guī)定的時(shí)間計(jì)劃內(nèi)完成研發(fā)任務(wù)。以上挑戰(zhàn)為云數(shù)據(jù)中心的安全性及軟件設(shè)計(jì)的便捷性帶來(lái)了極大的復(fù)雜性,并且這種矛盾的存在嚴(yán)重影響了企業(yè)對(duì)數(shù)據(jù)中心安全性及開(kāi)發(fā)效率的要求,成為需要迫切解決的技術(shù)難題。
技術(shù)實(shí)現(xiàn)要素:
為了解決以上技術(shù)問(wèn)題,本發(fā)明提出了一種基于OSGI的應(yīng)用系統(tǒng)嵌入應(yīng)用服務(wù)器的方法,通過(guò)將OSGI框架改進(jìn)并融入到Eclipse平臺(tái)的應(yīng)用服務(wù)器。它擁有Web應(yīng)用的優(yōu)點(diǎn)和先進(jìn)的動(dòng)態(tài)化、模塊化的特性,實(shí)現(xiàn)了應(yīng)用系統(tǒng)模塊之間的高耦合度。應(yīng)用內(nèi)部將平臺(tái)以及業(yè)務(wù)的所有功能拆分成具體的模塊中,模塊運(yùn)行在OSGI框架中。
設(shè)計(jì)上摒棄了以往采用邏輯上的模塊劃分將各功能模塊的文件交叉存放的弊端:業(yè)務(wù)模塊之間很容易相互干擾,不僅降低了業(yè)務(wù)應(yīng)用的開(kāi)發(fā)效率也對(duì)產(chǎn)品的穩(wěn)定性產(chǎn)生了一定影響,改進(jìn)后的平臺(tái)微內(nèi)核解決了讓這個(gè)問(wèn)題。主要特點(diǎn),采用微內(nèi)核設(shè)計(jì)運(yùn)行效率大大提高,加大了數(shù)據(jù)的執(zhí)行效率,采用安全的層次結(jié)構(gòu),將服務(wù)端和持久層又做了一層封裝,高效安全。通過(guò)OSGI框架融入Eclipse平臺(tái)管理數(shù)據(jù)的方法主要設(shè)計(jì)結(jié)構(gòu)包括:(1)平臺(tái)微內(nèi)核、(2)安全層次結(jié)構(gòu)。
所述的平臺(tái)微內(nèi)核,將WEB應(yīng)用服務(wù)器作為OSGI框架的一個(gè)寄存體,微內(nèi)核被封裝在OSGI框架內(nèi)部,提供對(duì)模塊的引擎,請(qǐng)求的處理,安全策略,緩存機(jī)制,事件及異常信息的控制等功能。
所述的安全層次結(jié)構(gòu),將控制層、應(yīng)用層、和持久層進(jìn)行安全隔離,很好的把控?cái)?shù)據(jù)中心的數(shù)據(jù)。
本發(fā)明的結(jié)構(gòu)設(shè)計(jì)主要針對(duì)Eclipse開(kāi)發(fā)平臺(tái)的特點(diǎn),采用基于OSGI架構(gòu)的微內(nèi)核設(shè)計(jì)形式來(lái)提供對(duì)數(shù)據(jù)中心的企業(yè)級(jí)的安全防護(hù)及開(kāi)發(fā),同時(shí)通過(guò)對(duì)服務(wù)端的設(shè)計(jì)與封裝,將各個(gè)子模塊獨(dú)立開(kāi)來(lái),增加了代碼的耦合度,大大提高了軟件開(kāi)發(fā)的安全系數(shù)。服務(wù)端又分三層,控制層,邏輯層和持久層。控制層,又稱交互層。服務(wù)交互部分是核心框架最重要的部分之一,它負(fù)責(zé)接收并處理瀏覽器或者系統(tǒng)發(fā)送的請(qǐng)求,提供用戶請(qǐng)求數(shù)據(jù)的格式化、傳輸、封包與解包,URL處理的派發(fā)等功能。邏輯層一般認(rèn)為其處于該平臺(tái)創(chuàng)建項(xiàng)目分層體系的服務(wù)層,介于交互層和持久層之間,一般依賴于持久層而不依賴于交互層。邏輯層的職責(zé)顧名思義是對(duì)業(yè)務(wù)邏輯的封裝。在該OSGI嵌入Eclipse平臺(tái)中,邏輯層技術(shù)主要指的是一個(gè)個(gè)邏輯構(gòu)件,在一定程度上簡(jiǎn)化了用戶在開(kāi)發(fā)中,使用事務(wù)、Web Services和AOP等功能的使用。
平臺(tái)持久層的使用主要體現(xiàn)在兩塊:資源的配置、持久化方法的調(diào)用。在默認(rèn)情況下平臺(tái)將為用戶自動(dòng)在文件中配置一個(gè)SessionFactory對(duì)象和Hibernate文件路徑。Hibernate可以在平臺(tái)上完美使用,能夠很好的劃分應(yīng)用層次,能夠獨(dú)立的對(duì)事務(wù)管理和數(shù)據(jù)訪問(wèn),大大提高了各個(gè)模塊間的聚合度,降低了應(yīng)用程序?qū)ο蟮鸟詈隙取?/p>
本發(fā)明的有益效果是:
開(kāi)發(fā)效率與數(shù)據(jù)安全保護(hù),主要是指數(shù)據(jù)中心數(shù)據(jù)被完整的封裝于各個(gè)不同的層次,并可以根據(jù)需要隨時(shí)添加所需要的任何構(gòu)件,模塊等,不影響當(dāng)前項(xiàng)目。
附圖說(shuō)明
圖1是平臺(tái)微內(nèi)核架構(gòu)示意圖。
具體實(shí)施方式
下面對(duì)本發(fā)明的內(nèi)容進(jìn)行更加詳細(xì)的闡述:
正如發(fā)明內(nèi)容中所描述的,本發(fā)明中提高數(shù)據(jù)中心安全性能及便捷開(kāi)發(fā)的方法主要包括:平臺(tái)微內(nèi)核,安全層次結(jié)構(gòu)。
平臺(tái)微內(nèi)核的設(shè)計(jì)主要包括模塊引擎,請(qǐng)求處理,安全,策略,緩存,模型,事件及異常信息處理等功能。其中模塊化引擎主要對(duì)開(kāi)發(fā)者提供模塊化方案,根據(jù)業(yè)務(wù)邏輯,及Hibernate機(jī)制將各模塊分開(kāi),實(shí)現(xiàn)了業(yè)務(wù)上的分離,提高安全性性能。微內(nèi)核會(huì)將收到的請(qǐng)求采用資源利用率最大化策略進(jìn)行處理,降低了因等待而浪費(fèi)的時(shí)間。
安全層次結(jié)構(gòu),基于OSGI架構(gòu)的Eclipse IDE開(kāi)發(fā)平臺(tái)。使用Web應(yīng)用容器作為接口,通過(guò)使用應(yīng)用橋接器鏈接集成的OSGI框架,進(jìn)行模塊化的開(kāi)發(fā),增加了項(xiàng)目模塊的耦合度。