云處理裝置和方法
【專利說(shuō)明】云處理裝置和方法
[0001]
技術(shù)領(lǐng)域
[0002]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體地,涉及一種云處理裝置和一種云處理方法。
[0003]
【背景技術(shù)】
[0004]企業(yè)軟件服務(wù)端采用Mina框架進(jìn)行構(gòu)建原生業(yè)務(wù)處理服務(wù),機(jī)制解決了對(duì)于資源(文件、視頻、音頻、圖片)的傳輸管理,網(wǎng)絡(luò)通訊集群處理總線的設(shè)計(jì)增強(qiáng)了基于Mina構(gòu)建的支撐云體系的健壯性,同時(shí)也簡(jiǎn)化了開發(fā),降低了運(yùn)營(yíng)成本。數(shù)據(jù)處理方面通過(guò)實(shí)時(shí)波頻處理、動(dòng)態(tài)流切換機(jī)制和連接集線分析三項(xiàng)機(jī)制,提升了集群環(huán)境下業(yè)務(wù)處理的并發(fā)高效性。
[0005]本模型使用Mina作為Java網(wǎng)絡(luò)通訊框架極大簡(jiǎn)化了通過(guò)網(wǎng)絡(luò)構(gòu)造應(yīng)用的難度,機(jī)制主要面向支撐型云計(jì)算平臺(tái)領(lǐng)域,解決了資源處理和數(shù)據(jù)處理結(jié)合的應(yīng)用場(chǎng)景,通過(guò)設(shè)計(jì)Mina集群總線和服務(wù)器心跳處理總線保障了集群環(huán)境下業(yè)務(wù)處理的高效性和穩(wěn)定性。單臺(tái)Mina服務(wù)通過(guò)機(jī)制改造減少了數(shù)據(jù)轉(zhuǎn)換、傳輸、申請(qǐng)與銷毀的資源消耗開銷,同時(shí)增加了實(shí)時(shí)波頻狀態(tài)處理模塊解決了在云計(jì)算環(huán)境下業(yè)務(wù)訪問(wèn)分布不均勻和資源使用不均勻的情況。
[0006]目前行業(yè)和領(lǐng)域內(nèi)尚未出現(xiàn)一種基于Java高效處理網(wǎng)絡(luò)通訊的運(yùn)營(yíng)支撐云處理機(jī)制,主流處理方式傾向于C/C++的開源實(shí)現(xiàn),或是通過(guò)GoLang、Erlang等并發(fā)模型進(jìn)行實(shí)現(xiàn),開發(fā)成本較高,在業(yè)務(wù)處理健壯性也沒(méi)有一套統(tǒng)一機(jī)制,同時(shí)上述方案還存在以下具體缺陷:
(I)Mina框架中對(duì)于Stream1Handler多線程傳輸資源場(chǎng)景下,效率低,支持客戶端連接數(shù)少,穩(wěn)定性差(官方不推薦使用StreamloHandler)。
[0007](2)Mina并發(fā)環(huán)境下資源傳輸無(wú)法實(shí)現(xiàn)零拷貝模式,需要自己修改底層實(shí)現(xiàn),目前沒(méi)有統(tǒng)一實(shí)現(xiàn)標(biāo)準(zhǔn)。
[0008](3)客戶端請(qǐng)求資源和業(yè)務(wù)處理速度的快慢,服務(wù)端無(wú)法實(shí)時(shí)感知,絕大多數(shù)支撐平臺(tái)缺少波頻處理模塊,當(dāng)慢連接出現(xiàn)時(shí),往往造成系統(tǒng)宕機(jī)或假死情況發(fā)生。
[0009](4)缺乏對(duì)字節(jié)流、字符流的統(tǒng)一管理機(jī)制,Mina自身不提供數(shù)據(jù)壓縮與解壓機(jī)制實(shí)現(xiàn),同時(shí)缺乏通訊數(shù)據(jù)串行化處理。
[0010](5)缺乏一套統(tǒng)一有效的面向支撐云體系集群通訊與服務(wù)總線,企業(yè)內(nèi)實(shí)現(xiàn)總線需要采用ESB做服務(wù)總線,性能損耗嚴(yán)重,缺少心跳處理總線。
[0011 ] (6)開發(fā)成本高,高效云支撐服務(wù)一般通過(guò)C/C++開源實(shí)現(xiàn),很難與企業(yè)Java體系架構(gòu)應(yīng)用和平臺(tái)做集成,同時(shí)開發(fā)效率低。
[0012](7)缺乏對(duì)資源處理轉(zhuǎn)換、傳輸、申請(qǐng)與銷毀的控制,尚未形成一套統(tǒng)一機(jī)制和模型。
[0013](8)缺乏基于Mina構(gòu)建的連接分析處理機(jī)制,無(wú)法動(dòng)態(tài)處理單機(jī)粒度連接壓力和資源損耗。
[0014](9) Mina作為網(wǎng)絡(luò)通訊框架構(gòu)建的服務(wù)無(wú)法將業(yè)務(wù)數(shù)據(jù)中公共數(shù)據(jù)進(jìn)行提煉,例如連接元數(shù)據(jù)容器。
[0015](10)以Mina實(shí)現(xiàn)的支撐云缺少操作流程組裝、操作流程溯源分析,如希望高效實(shí)現(xiàn)分析過(guò)程,在網(wǎng)絡(luò)通訊場(chǎng)景復(fù)雜度高,尚沒(méi)有成功方案。
[0016](11) Mina在業(yè)務(wù)處理與資源處理混合處理的場(chǎng)景下,單機(jī)處理事務(wù)能力較差,平均只在1400/s上下(標(biāo)準(zhǔn)DELL R410 4核16G內(nèi)存環(huán)境下)。
[0017](12)Mina在處理網(wǎng)絡(luò)請(qǐng)求時(shí)需實(shí)現(xiàn)動(dòng)態(tài)負(fù)載均衡算法,目前主流負(fù)載均衡中間件無(wú)法滿足,需要結(jié)合流控?cái)?shù)據(jù)和資源消耗做出判定。
[0018]現(xiàn)狀:目前行業(yè)內(nèi)沒(méi)有一套成熟使用Mina框架作為網(wǎng)絡(luò)通訊框架應(yīng)用在支撐運(yùn)營(yíng)云的處理機(jī)制。存在的方案大部分采用C/C++或一些函數(shù)式面向并發(fā)的腳本語(yǔ)言進(jìn)行開發(fā),無(wú)法實(shí)現(xiàn)兼容大部分企業(yè)級(jí)網(wǎng)絡(luò)通訊類型的技術(shù)需求。通過(guò)Mina進(jìn)行構(gòu)建的網(wǎng)絡(luò)平臺(tái)存在嚴(yán)重的機(jī)制問(wèn)題,包括對(duì)于資源、并發(fā)、數(shù)據(jù)的控制,同時(shí)也缺少通訊的服務(wù)總線。
[0019]因此,需要一種新的云處理技術(shù),可以在現(xiàn)有的云處理方式基礎(chǔ)上,充分利用單對(duì)象類型完成多對(duì)象類型元數(shù)據(jù)的云處理,建立多對(duì)象類型元數(shù)據(jù)參與的云處理的通用、統(tǒng)一處理思路。
[0020]
【發(fā)明內(nèi)容】
[0021]本發(fā)明正是基于上述問(wèn)題,提出了一種新的云處理技術(shù),可以在現(xiàn)有的云處理方式基礎(chǔ)上,充分利用單對(duì)象類型完成多對(duì)象類型元數(shù)據(jù)的云處理,建立多對(duì)象類型元數(shù)據(jù)參與的云處理的通用、統(tǒng)一處理思路。
[0022]有鑒于此,本發(fā)明提出了一種云處理裝置,包括:Mina流程改造單元,用于對(duì)Mina本身流程進(jìn)行改造;負(fù)載提高單元,用于基于對(duì)Mina本身流程的改造,通過(guò)業(yè)務(wù)流程的轉(zhuǎn)換和業(yè)務(wù)屬性的拆分,提高負(fù)載;Mina集群管理器,用于提供集群解決機(jī)制,進(jìn)行集群維護(hù)。在該技術(shù)方案中,可以通過(guò)對(duì)Mina本身機(jī)制的改造和整體Mina集群環(huán)境下的通訊處理,有效解決對(duì)于資源數(shù)據(jù)處理、流控波頻處理、高負(fù)載高并發(fā)環(huán)境下的訪問(wèn)處理等復(fù)雜邏輯問(wèn)題。
[0023]在上述技術(shù)方案中,優(yōu)選地,所述Mina流程改造單元,具體包括:Mina數(shù)據(jù)流程改進(jìn)模塊,用于基于維護(hù)的集群,獲取客戶端連接句柄,傳遞到客戶端;客戶端連接注冊(cè)器,將客戶端連接句柄分發(fā)給主線程,由主線程獲取業(yè)務(wù)數(shù)據(jù);將業(yè)務(wù)數(shù)據(jù)傳輸?shù)綌?shù)據(jù)托管服務(wù)層,進(jìn)行數(shù)據(jù)分類和數(shù)據(jù)管理,完成字節(jié)流處理;Mina業(yè)務(wù)流改進(jìn)模塊,用于基于處理后的字節(jié)流,通過(guò)字節(jié)流初始化處理,通過(guò)Mina的業(yè)務(wù)處理機(jī)制進(jìn)行封裝。在該技術(shù)方案中,可以描述系統(tǒng)從監(jiān)聽(tīng)客戶端請(qǐng)求到加載與處理數(shù)據(jù)的整體流程;同時(shí)標(biāo)識(shí)出處理不同類型客戶端請(qǐng)求的處理方式,對(duì)于字節(jié)流和字符流提供了不同機(jī)制進(jìn)行處理。
[0024]在上述技術(shù)方案中,優(yōu)選地,所述負(fù)載提高單元,具體包括:智能波頻調(diào)度模塊,用于實(shí)時(shí)記錄客戶端流量,定時(shí)回寫一次客戶端描述元數(shù)據(jù)信息,根據(jù)波頻調(diào)度策略實(shí)時(shí)改變客戶端句柄處理的優(yōu)先級(jí);波頻淘汰策略處理模塊,用于調(diào)度波頻淘汰策略,對(duì)負(fù)載狀態(tài)及壓力進(jìn)行控制;Mina本地資源分析處理模塊,用于對(duì)本地資源進(jìn)行監(jiān)控,定時(shí)將當(dāng)前服務(wù)器資源情況匯總到集群服務(wù)中做校正;根據(jù)Mina服務(wù)本地匯總的數(shù)據(jù)進(jìn)行合并分析,對(duì)服務(wù)器中連接句柄進(jìn)行調(diào)度分類。在該技術(shù)方案中,可以描述Mina內(nèi)部對(duì)于壓力和流控的處理方式,主要集中在波頻調(diào)度引擎和本地監(jiān)控分析引擎、同時(shí)也描述了與集群管理之間的關(guān)系。
[0025]在上述技術(shù)方案中,優(yōu)選地,所述Mina數(shù)據(jù)流程改進(jìn)模塊由主線程獲取業(yè)務(wù)數(shù)據(jù)的操作,進(jìn)一步包括:管理客戶端信息,并提供客戶端對(duì)象容器、同時(shí)僅只有主線程可以訪問(wèn)數(shù)據(jù)庫(kù),當(dāng)需要客戶端需要訪問(wèn)數(shù)據(jù)庫(kù)時(shí),主線程負(fù)責(zé)推送處理好的數(shù)據(jù)給客戶端句柄;和/或,所述Mina數(shù)據(jù)流程改進(jìn)模塊進(jìn)行數(shù)據(jù)分類和數(shù)據(jù)管理的操作,進(jìn)一步包括:根據(jù)數(shù)據(jù)類型判定數(shù)據(jù)傳輸方式,將資源類數(shù)據(jù)傳輸剝離出Mina處理框架,通過(guò)資源傳輸流處理引擎處理,通過(guò)Mina框架剝離器匯總到數(shù)據(jù)托管服務(wù)層,形成循環(huán)操作;業(yè)務(wù)類數(shù)據(jù)通過(guò)Mina自身的業(yè)務(wù)封裝進(jìn)行處理,對(duì)封裝進(jìn)行局部改進(jìn);所述數(shù)據(jù)類型,包括資源類和業(yè)務(wù)類;和/或,所述Mina業(yè)務(wù)流改進(jìn)模塊通過(guò)字節(jié)流初始化處理的操作,進(jìn)一步包括:在自接力處理引擎中完成翻譯,劃分出業(yè)務(wù)實(shí)例,將業(yè)務(wù)實(shí)例傳輸?shù)絇reworker線程池內(nèi)進(jìn)行處理,線程池內(nèi)所有子線程都均兼容前攝器處理機(jī)制、反應(yīng)堆處理機(jī)制、阻塞器處理機(jī)制;和/或,所述智能波頻調(diào)度模塊根據(jù)波頻調(diào)度策略實(shí)時(shí)改變客戶端句柄處理的優(yōu)先級(jí)的操作,進(jìn)一步包括:當(dāng)出現(xiàn)低于本服務(wù)處理閥值的句柄時(shí),強(qiáng)行將句柄蟲數(shù)據(jù)托管服務(wù)層中剝離,并傳遞給集群中慢連接傳輸接口,由集群根據(jù)句柄屬性進(jìn)行句柄再傳遞;和/或,所述Mina本地資源分析處理模塊監(jiān)控的本地資源,包括CPU、內(nèi)存和網(wǎng)絡(luò)。
[0026]在上述技術(shù)方案中,優(yōu)選地,所述Mina集群管理器,具體包括:慢連接處理引擎提供模塊,用于負(fù)責(zé)接收Mina服務(wù)器提交的不符合當(dāng)前服務(wù)器處理訴求的客戶端連接句柄,在集群中維護(hù)一張句柄容器表,通過(guò)探測(cè)初始化句柄的地域特性,將句柄傳遞給負(fù)責(zé)處理?xiàng)l件的Mina服務(wù)器中;集群處理服務(wù)總線提供模塊,用于與Mina服務(wù)中的通知引擎交互,收集和判定當(dāng)前MINA服務(wù)的處理能力,進(jìn)行系統(tǒng)評(píng)級(jí),處理能力強(qiáng)的服務(wù)器優(yōu)先選擇快速句柄進(jìn)行連接;動(dòng)態(tài)調(diào)整服務(wù)器的評(píng)級(jí),在集群內(nèi)設(shè)置一定的步