隨著時代的進(jìn)步,科技的發(fā)展,企業(yè)管理模式發(fā)生了巨大的變化,軟件行業(yè)也得到長足的發(fā)展,云計算已是信息技術(shù)發(fā)展的熱點(diǎn)并逐步成為推動信息技術(shù)發(fā)展的源動力。在信息科技飛速發(fā)展的今天,我們?nèi)绾螌⑿袠I(yè)新技術(shù)轉(zhuǎn)化為產(chǎn)品,以滿足企業(yè)日益增長的各種需求,如何有效整合企業(yè)各種IT資源為企業(yè)提供更加穩(wěn)定、高效、智能、豐富的IT服務(wù),如何為企業(yè)提供隨時隨地的IT服務(wù),最終實(shí)現(xiàn)為企業(yè)提供基于實(shí)現(xiàn)戰(zhàn)略目標(biāo)的IT規(guī)劃和解決方案、提高企業(yè)管理水平、增強(qiáng)企業(yè)核心競爭力的目標(biāo)。RS10私有云架構(gòu)將對這些問題進(jìn)行解決,依托云架構(gòu)部署各種應(yīng)用,以滿足企業(yè)多變的業(yè)務(wù)需求,高并發(fā)的訪問量,海量的數(shù)據(jù)處理,提高企業(yè)生產(chǎn)效率。
RS10系統(tǒng)已歷經(jīng)十余年的發(fā)展,這十年是軟件行業(yè)飛速發(fā)展的十年,十年中RS10系統(tǒng)經(jīng)歷數(shù)次大的改進(jìn)和突破,如產(chǎn)品集團(tuán)版的推出、開發(fā)工具的推出、以O(shè)PA和TBM為代表的新頁面形式的推出等,每一次大的變革都是RS10系統(tǒng)的巨大進(jìn)步,然而每一次大的變革也都給RS10系統(tǒng)的底層架構(gòu)帶來巨大沖擊。而且由于企業(yè)的迅速發(fā)展和信息建設(shè)的全面發(fā)展,企業(yè)使用信息管理系統(tǒng)的人數(shù)在不斷增加,信息量不斷累積,數(shù)據(jù)庫性能急劇下降,對并發(fā)訪問量和海量數(shù)據(jù)處理的需求越來越緊迫,分布式數(shù)據(jù)庫的使用和部署已成為必然。為了產(chǎn)品能有更好的發(fā)展,大幅度提升性能,因此支持私有云平臺和分布式數(shù)據(jù)庫的部署,提高系統(tǒng)的穩(wěn)定性和高性能,使RS10走向更高端的市場就成為必然。
一、RS10私有云架構(gòu)
RS10私有云架構(gòu)分為四層:物理層、平臺層、支撐層和應(yīng)用層。
物理層:主要包括各種異構(gòu)的硬件環(huán)境和私有云平臺的硬件架構(gòu),如各種型號的服務(wù)器、存儲設(shè)備、網(wǎng)絡(luò)環(huán)境等。
平臺層:平臺層是RS10技術(shù)架構(gòu)的基礎(chǔ),也是RS10實(shí)現(xiàn)分布式數(shù)據(jù)庫和分布式部署平臺的基礎(chǔ),為RS10技術(shù)架構(gòu)提供傳統(tǒng)的部署方式和企業(yè)私有云服務(wù)部署方式。傳統(tǒng)部署方式是指在專用服務(wù)器上進(jìn)行WEB服務(wù)和數(shù)據(jù)庫服務(wù)的部署;企業(yè)私有云服務(wù)部署方式是指在企業(yè)私有云基礎(chǔ)架構(gòu)上部署RS10產(chǎn)品的業(yè)務(wù)系統(tǒng)和數(shù)據(jù)庫服務(wù)。
傳統(tǒng)部署方式包括WEB服務(wù)的集群式部署、WEB服務(wù)的分布式部署、數(shù)據(jù)庫服務(wù)的集中式部署以及數(shù)據(jù)庫服務(wù)的分布式部署。對于中小型企業(yè)可為其部署WEB服務(wù)集群和集中式的數(shù)據(jù)庫服務(wù);對于沒有搭建企業(yè)私有云基礎(chǔ)架構(gòu)的大型集團(tuán)企業(yè)可以為其部署分布式WEB服務(wù)和數(shù)據(jù)庫服務(wù)。此時專用服務(wù)器上WEB服務(wù)和數(shù)據(jù)庫服務(wù)是RS10新產(chǎn)品技術(shù)架構(gòu)的平臺層。
企業(yè)私有云服務(wù)部署方式是指在企業(yè)私有云架構(gòu)上進(jìn)行RS10業(yè)務(wù)系統(tǒng)和數(shù)據(jù)庫服務(wù)的部署。RS10技術(shù)架構(gòu)包括企業(yè)私有云架構(gòu)的搭建,RS10作為一個云計算ERP產(chǎn)品部署在企業(yè)私有云基礎(chǔ)架構(gòu)上。企業(yè)私有云基礎(chǔ)架構(gòu)有效的整合了企業(yè)內(nèi)的各項(xiàng)IT資源,RS10技術(shù)架構(gòu)的WEB服務(wù)和數(shù)據(jù)庫服務(wù)支持在企業(yè)私有云環(huán)境中的部署。對于已經(jīng)搭建了私有云基礎(chǔ)架構(gòu)的大型集團(tuán)企業(yè),建議在私有云基礎(chǔ)架構(gòu)上部署RS10技術(shù)架構(gòu)的WEB服務(wù)和數(shù)據(jù)庫服務(wù),充分利用企業(yè)私有云基礎(chǔ)架構(gòu)的計算能力。對于沒有搭建私有云架構(gòu)的企業(yè),可以通過部署RS10私有云框架進(jìn)行部署RS10的業(yè)務(wù)系統(tǒng)和分布式數(shù)據(jù)庫服務(wù)。此時企業(yè)私有云基礎(chǔ)架構(gòu)以及部署在企業(yè)私有云基礎(chǔ)架構(gòu)上的WEB服務(wù)和數(shù)據(jù)庫服務(wù)是RS10技術(shù)架構(gòu)的平臺層。
支持層:支持層是RS10技術(shù)架構(gòu)的主要內(nèi)容,包括云服務(wù)管理框架、基于云服務(wù)管理框架的業(yè)務(wù)元數(shù)據(jù)服務(wù)和業(yè)務(wù)流程引擎服務(wù)以及在此之上的用戶認(rèn)證和權(quán)限服務(wù)、信息推送服務(wù)、日志、搜索、報表等基本內(nèi)置服務(wù)。
云服務(wù)管理框架支持企業(yè)私有云平臺的部署,是基于企業(yè)私有云基礎(chǔ)架構(gòu)的對上層各種業(yè)務(wù)子系統(tǒng)服務(wù)以及各種內(nèi)置服務(wù)進(jìn)行統(tǒng)一管理的基礎(chǔ)架構(gòu),并完成各業(yè)務(wù)子系統(tǒng)服務(wù)間的協(xié)同運(yùn)作,實(shí)現(xiàn)各業(yè)務(wù)子系統(tǒng)服務(wù)之間的通信和整合。業(yè)務(wù)子系統(tǒng)服務(wù)的管理包括安裝、卸載、更新、啟動以及運(yùn)行情況監(jiān)控和動態(tài)配置等。RS10技術(shù)架構(gòu)將提供服務(wù)配置管理的前臺工具集合,用來幫助系統(tǒng)管理人員進(jìn)行系統(tǒng)的日常維護(hù)。RS10系統(tǒng)將作為企業(yè)私有云基礎(chǔ)架構(gòu)上的云應(yīng)用,充分發(fā)揮企業(yè)私有云基礎(chǔ)架構(gòu)的計算能力,為企業(yè)提供更加穩(wěn)定、高效的服務(wù)。主要功能如下:
服務(wù)基本管理功能:服務(wù)類型包括基本內(nèi)置服務(wù)、應(yīng)用層各子系統(tǒng)服務(wù)、客戶化服務(wù);竟芾砉δ馨ǚ⻊(wù)安裝、卸載、更新、啟動以及運(yùn)行情況監(jiān)控和動態(tài)配置等,提供類似Websphere管理控制臺的服務(wù)配置管理平臺。
各服務(wù)間的通信:主要包括基本內(nèi)置服務(wù)之間、應(yīng)用層各子系統(tǒng)服務(wù)間、應(yīng)用層對基本內(nèi)置服務(wù)的調(diào)用、客戶化服務(wù)對基本內(nèi)置服務(wù)和應(yīng)用層各子系統(tǒng)服務(wù)的調(diào)用。
分布式WEB服務(wù)器:在分布式WEB服務(wù)器上的部署以及分布式事物的支持(分布式事務(wù)是指操作多個數(shù)據(jù)庫之間的事務(wù)),包括Websphere的分布式部署、Spring對分布式事物的支持、JTA(Java Transaction API)允許應(yīng)用程序執(zhí)行分布式事務(wù)處理——主要是在兩個或多個網(wǎng)絡(luò)計算機(jī)資源上訪問并且更新數(shù)據(jù)的操作。
分布式數(shù)據(jù)庫服務(wù)器:提供了存儲數(shù)據(jù)的方法,使企業(yè)能夠有效地管理存儲在分布式系統(tǒng)中的數(shù)據(jù)。能夠自動、準(zhǔn)確、及時地分發(fā)和分析整個企業(yè)中的數(shù)據(jù),主要實(shí)現(xiàn)針對oracle數(shù)據(jù)庫的分布式部署。
私有云環(huán)境服務(wù)器部署:根據(jù)私有云環(huán)境架構(gòu)的特點(diǎn),實(shí)現(xiàn)WEB服務(wù)器和數(shù)據(jù)庫服務(wù)的部署策略,主要使用Hadoop和Spring Hadoop技術(shù)等。
業(yè)務(wù)元數(shù)據(jù)服務(wù)和業(yè)務(wù)流程引擎服務(wù)是RS10新產(chǎn)品技術(shù)架構(gòu)的兩個關(guān)鍵服務(wù):
1) 業(yè)務(wù)元數(shù)據(jù)服務(wù)定義了業(yè)務(wù)元數(shù)據(jù)模型、業(yè)務(wù)實(shí)體接口,并提供了各種管理服務(wù),比如業(yè)務(wù)實(shí)體間的關(guān)聯(lián)關(guān)系、版本信息、檢索以及擴(kuò)展信息等。業(yè)務(wù)元數(shù)據(jù)服務(wù)將為所有上層業(yè)務(wù)子系統(tǒng)服務(wù)提供數(shù)據(jù)支持,在整個產(chǎn)品架構(gòu)層面整合所有縱向業(yè)務(wù)子系統(tǒng)中的業(yè)務(wù)數(shù)據(jù)。例如在業(yè)務(wù)元數(shù)據(jù)服務(wù)可定義單據(jù)的元數(shù)據(jù)模型,在業(yè)務(wù)子系統(tǒng)中實(shí)現(xiàn)具體的業(yè)務(wù)單據(jù)類型,比如采購訂單、采購接收單、質(zhì)檢單、倉庫的入庫單、出庫單等,在業(yè)務(wù)元數(shù)據(jù)服務(wù)中實(shí)現(xiàn)單據(jù)的關(guān)聯(lián)關(guān)系,實(shí)現(xiàn)各種單據(jù)的關(guān)聯(lián),實(shí)現(xiàn)所采購物品的信息追蹤。另外依托業(yè)務(wù)元數(shù)據(jù)服務(wù)更便于實(shí)現(xiàn)數(shù)據(jù)挖掘,有助于實(shí)現(xiàn)更加智能的BI系統(tǒng)。
2) 業(yè)務(wù)流程引擎服務(wù)是根據(jù)從傳統(tǒng)業(yè)務(wù)系統(tǒng)中剝離出的業(yè)務(wù)流程規(guī)則,接收業(yè)務(wù)數(shù)據(jù)輸入,解釋業(yè)務(wù)流程規(guī)則并根據(jù)業(yè)務(wù)流程規(guī)則做出業(yè)務(wù)決策。業(yè)務(wù)流程引擎可有效提高復(fù)雜業(yè)務(wù)邏輯的代碼的可維護(hù)性,可幫助業(yè)務(wù)人員直接管理IT系統(tǒng)中的規(guī)則,不需要開發(fā)人員的參與。對于RS10集團(tuán)版ERP系統(tǒng)而言,有很多標(biāo)準(zhǔn)的業(yè)務(wù)流程和算法,這些流程和算法在產(chǎn)品實(shí)現(xiàn)中不提供自定義的業(yè)務(wù)規(guī)則,以保證企業(yè)業(yè)務(wù)的正確性和完整性。而對于非標(biāo)準(zhǔn)化的業(yè)務(wù)流程和算法則可以提供業(yè)務(wù)流程調(diào)整功能,幫助企業(yè)實(shí)現(xiàn)自己的業(yè)務(wù)流程。
內(nèi)置服務(wù)是RS10技術(shù)架構(gòu)中默認(rèn)實(shí)現(xiàn)的基本服務(wù)類型。包括用戶認(rèn)證和權(quán)限服務(wù)、信息推送服務(wù)、日志、搜索以及報表服務(wù)等。內(nèi)置服務(wù)類型作為支持層的一部分提供給應(yīng)用層各業(yè)務(wù)子系統(tǒng)調(diào)用,應(yīng)用層各業(yè)務(wù)子系統(tǒng)只需專注于業(yè)務(wù)邏輯的實(shí)現(xiàn)。內(nèi)置服務(wù)可通過云服務(wù)管理框架進(jìn)行管理,可像應(yīng)用層各業(yè)務(wù)子系統(tǒng)服務(wù)一樣進(jìn)行擴(kuò)展。內(nèi)置服務(wù)的實(shí)現(xiàn)也可集成第三方的系統(tǒng),比如報表服務(wù)即可使用第三方的報表服務(wù)器。
支持層提供了基礎(chǔ)的集成服務(wù),支持多種集成服務(wù)模式:
1) 應(yīng)用層各業(yè)務(wù)子系統(tǒng)服務(wù)間的集成,這屬于RS10內(nèi)部子系統(tǒng)間的集成。根據(jù)項(xiàng)目需要選擇需要集成的業(yè)務(wù)子系統(tǒng)進(jìn)行安裝,例如物流線各業(yè)務(wù)子系統(tǒng)之間進(jìn)行集成安裝。這些子系統(tǒng)既可以部署在同一臺服務(wù)器上,完成傳統(tǒng)的集中式的部署,也可以安裝在不同的服務(wù)器上,實(shí)現(xiàn)企業(yè)私有云的部署。
2) RS10內(nèi)部各業(yè)務(wù)子系統(tǒng)與第三方業(yè)務(wù)系統(tǒng)的集成。例如支持層提供的多種內(nèi)置服務(wù),其中報表服務(wù)可以采取集成第三方報表服務(wù)器的方式來實(shí)現(xiàn)。RS10新產(chǎn)品中各子系統(tǒng)需要用到內(nèi)置報表服務(wù)的,只需直接調(diào)用內(nèi)置報表服務(wù)的接口即可,無需修改程序,由云服務(wù)管理框架來完成對第三方報表服務(wù)器的訪問。
3) 客戶化應(yīng)用服務(wù)與RS10各業(yè)務(wù)子系統(tǒng)服務(wù)以及多種內(nèi)置服務(wù)的集成?蛻艋瘧(yīng)用服務(wù)是指客戶根據(jù)RS10技術(shù)架構(gòu)開發(fā)的客戶化應(yīng)用,支持層的云服務(wù)管理框架支持對客戶化應(yīng)用服務(wù)的管理,客戶化服務(wù)可使用支持層提供的各項(xiàng)內(nèi)置服務(wù)以及RS10各子系統(tǒng)業(yè)務(wù)服務(wù)。
應(yīng)用層:應(yīng)用層包含所有業(yè)務(wù)子系統(tǒng)服務(wù),依據(jù)支持層的業(yè)務(wù)元數(shù)據(jù)服務(wù)、業(yè)務(wù)流程引擎以及各種內(nèi)置服務(wù)開發(fā)業(yè)務(wù)子系統(tǒng)服務(wù),通過云服務(wù)管理框架對所有業(yè)務(wù)子系統(tǒng)服務(wù)進(jìn)行管理。業(yè)務(wù)系統(tǒng)服務(wù)間的關(guān)聯(lián)關(guān)系,在定義業(yè)務(wù)系統(tǒng)服務(wù)的時候進(jìn)行聲明,業(yè)務(wù)系統(tǒng)服務(wù)間的依賴關(guān)系由支持層的云服務(wù)管理框架統(tǒng)一管理。
應(yīng)用層提供各種業(yè)務(wù)子系統(tǒng)服務(wù),業(yè)務(wù)子系統(tǒng)客戶端的類型包括:傳統(tǒng)PC上的WEB應(yīng)用、移動設(shè)備上的WEB應(yīng)用、移動設(shè)備上的客戶端應(yīng)用、其他物聯(lián)網(wǎng)智能終端等。在具體應(yīng)用層業(yè)務(wù)子系統(tǒng)服務(wù)實(shí)現(xiàn)過程中,將酌情對RS10系統(tǒng)中的各業(yè)務(wù)子系統(tǒng)進(jìn)行遷移。
二、RS10私有云架構(gòu)的設(shè)計和實(shí)現(xiàn)
RS10設(shè)計后端云服務(wù)架構(gòu)如圖所示?蛻舳税l(fā)送請求到后端服務(wù)器,后端服務(wù)器中的請求控制器根據(jù)請求的類型(調(diào)用業(yè)務(wù)服務(wù)或打開功能頁面)進(jìn)行相應(yīng)處理,如果是調(diào)用業(yè)務(wù)邏輯,則將處理交給OSGI容器處理,并將處理結(jié)果返回給客戶端。
后端云服務(wù)架構(gòu)圖
Controller (控制器)的主要功能如下:
1) 劃分業(yè)務(wù)子系統(tǒng)。RS10系統(tǒng)是一個龐大的業(yè)務(wù)系統(tǒng)集合,其可劃分為多個業(yè)務(wù)子系統(tǒng),將不同的子系統(tǒng)部署在不同的服務(wù)器上,實(shí)現(xiàn)私有云平臺和分布式的部署,Controller根據(jù)URL將業(yè)務(wù)子系統(tǒng)區(qū)分以及讀取分布式數(shù)據(jù)庫的數(shù)據(jù)。
2) 路由請求類型。從客戶端發(fā)送的WEB有兩種:一種是調(diào)用后臺業(yè)務(wù)服務(wù)的,一種是打開特定功能頁面的?刂破鞲鶕(jù)請求類型的不同將請求轉(zhuǎn)交給指定的服務(wù)處理。
3) 注冊后端業(yè)務(wù)服務(wù)。后臺的各種業(yè)務(wù)服務(wù)都注冊在Controller上,由控制器根據(jù)請求類型來調(diào)用特定的服務(wù)完成業(yè)務(wù)操作。
OSGI Container (OSGI容器)的主要功能如下:
1) 管理后端業(yè)務(wù)服務(wù)。所有的后端服務(wù)都將運(yùn)行于OSGI容器中,包括支持層的基本內(nèi)置服務(wù)和應(yīng)用層的各子系統(tǒng)業(yè)務(wù)服務(wù)。管理后端業(yè)務(wù)服務(wù)包括:服務(wù)的啟動、關(guān)閉、更新、卸載等,實(shí)現(xiàn)后臺業(yè)務(wù)服務(wù)的生命周期管理。
2) 管理各服務(wù)之間的依賴關(guān)系。包括服務(wù)的創(chuàng)建以及服務(wù)在組件之間的引用、銷毀等。避免服務(wù)之間的直接依賴,降低服務(wù)之間的耦合度。
3) 提供模塊化、組件化的業(yè)務(wù)服務(wù)。業(yè)務(wù)服務(wù)都包含在特定的業(yè)務(wù)子系統(tǒng)模塊中,以通用jar包的形式運(yùn)行于OSGI容器。
Framework(框架)的主要功能如下:
1) 通過Controller控制器劃分業(yè)務(wù)子系統(tǒng),規(guī)范各業(yè)務(wù)功能模塊的URL設(shè)計,對部署在不同服務(wù)器上的子系統(tǒng)根據(jù)業(yè)務(wù)請求進(jìn)行處理,對計算資源和并發(fā)訪問進(jìn)行資源平衡,對私有云平臺進(jìn)行管理和操作,是私有云架構(gòu)的核心實(shí)現(xiàn)部分。
2)實(shí)現(xiàn)OSGI容器的管理,包括OSGI容器的部署、啟動、關(guān)閉等。
3) 實(shí)現(xiàn)Controller控制器和OSGI容器的通信。
4) 實(shí)現(xiàn)按照配置自動將支持層各內(nèi)置服務(wù)和業(yè)務(wù)子系統(tǒng)的持續(xù)構(gòu)建,即根據(jù)配置實(shí)現(xiàn)產(chǎn)品的持續(xù)集成。
本文首先介紹了RS10產(chǎn)品私有云架構(gòu),研究了私有云架構(gòu)的技術(shù)和實(shí)現(xiàn)策略,最后介紹了RS10實(shí)現(xiàn)私有云架構(gòu)的方式。通過在企業(yè)搭建私有云平臺,實(shí)現(xiàn)企業(yè)私有云ERP的搭建和使用,利用分布式數(shù)據(jù)庫,實(shí)現(xiàn)數(shù)據(jù)的分布存儲,能夠從根本上解決ERP高并發(fā)和海量數(shù)據(jù)的性能問題;通過部署云服務(wù)框架,能夠有效管理企業(yè)資源的使用,實(shí)現(xiàn)資源平衡。RS10依托云架構(gòu)部署各種應(yīng)用,將滿足企業(yè)多變的業(yè)務(wù)需求,高并發(fā)的訪問量,海量的數(shù)據(jù)處理,真正實(shí)現(xiàn)企業(yè)生產(chǎn)效率的提高。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:企業(yè)私有云在RS10中的應(yīng)用之三:企業(yè)私有云及分布式架構(gòu)實(shí)現(xiàn)
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839311557.html