本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體涉及一種為軟件系統(tǒng)的快速搭建提供快速擴(kuò)展的方法。
背景技術(shù):
隨著企業(yè)的信息化程度的不斷提高,網(wǎng)站類軟件應(yīng)用也越來(lái)越多,數(shù)據(jù)量越來(lái)越大,如果沒(méi)有一個(gè)好的底層代碼和系統(tǒng)架構(gòu),往往項(xiàng)目會(huì)數(shù)據(jù)混亂,難以進(jìn)行維護(hù)。
由于此底層系統(tǒng)需要與很多系統(tǒng)對(duì)接,因此也就存在一些系統(tǒng)不太容易對(duì)接的情況。比如目前此系統(tǒng)對(duì)接非關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)就會(huì)出現(xiàn)一些困難。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種為軟件系統(tǒng)的快速搭建提供快速擴(kuò)展的方法,實(shí)現(xiàn)了一種通用的底層系統(tǒng),為軟件系統(tǒng)的快速搭建提供了可靠、快速和可擴(kuò)展的方法。
為實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案:
一種為軟件系統(tǒng)的快速搭建提供快速擴(kuò)展的方法,包括如下步驟:
步驟1:建立軟件系統(tǒng)框架,軟件系統(tǒng)框架包括數(shù)個(gè)系統(tǒng)服務(wù)器、數(shù)個(gè)數(shù)據(jù)庫(kù)服務(wù)器、優(yōu)化部署服務(wù)器和路由器,所有系統(tǒng)服務(wù)器、所有數(shù)據(jù)庫(kù)服務(wù)器和路由器均通過(guò)網(wǎng)線連接優(yōu)化部署服務(wù)器;系統(tǒng)服務(wù)器為軟件系統(tǒng)框架的底層服務(wù)器,用于輸出軟件所產(chǎn)生的數(shù)據(jù),即源數(shù)據(jù);
步驟2:在優(yōu)化部署服務(wù)器中建立控制層、視圖層、數(shù)據(jù)庫(kù)處理層和系統(tǒng)函數(shù)模塊;
步驟3:所有系統(tǒng)服務(wù)器均向優(yōu)化部署服務(wù)器傳輸源數(shù)據(jù),控制層獲取源數(shù)據(jù);
步驟4:系統(tǒng)函數(shù)模塊根據(jù)其內(nèi)部存儲(chǔ)的所有函數(shù)制定函數(shù)目錄,控制層從系統(tǒng)函數(shù)模塊中獲取函數(shù)目錄,控制層根據(jù)函數(shù)目錄對(duì)源數(shù)據(jù)進(jìn)行歸類處理,并制定源數(shù)據(jù)與其對(duì)應(yīng)函數(shù)的映射目錄;
步驟5:控制層根據(jù)映射目錄獲取相應(yīng)的函數(shù),并對(duì)源數(shù)據(jù)分配相應(yīng)的函數(shù);
步驟6:控制層根據(jù)函數(shù)的規(guī)則對(duì)源數(shù)據(jù)進(jìn)行計(jì)算處理,生成目標(biāo)數(shù)據(jù);
步驟7:控制層將目標(biāo)數(shù)據(jù)同時(shí)傳送給數(shù)據(jù)庫(kù)處理層和視圖層;
步驟8:數(shù)據(jù)庫(kù)處理層按以下步驟對(duì)目標(biāo)數(shù)據(jù)進(jìn)行處理:
步驟a:控制層對(duì)數(shù)據(jù)庫(kù)處理層發(fā)出數(shù)據(jù)操作指令;數(shù)據(jù)庫(kù)處理層接收到數(shù)據(jù)操作指令后執(zhí)行步驟b;否則執(zhí)行步驟a;
步驟b:數(shù)據(jù)庫(kù)處理層對(duì)目標(biāo)數(shù)據(jù)中的非法字符進(jìn)行隔離,生成合法目標(biāo)數(shù)據(jù);
步驟c:數(shù)據(jù)庫(kù)處理層對(duì)合法目標(biāo)數(shù)據(jù)進(jìn)行打包處理,生成目標(biāo)數(shù)據(jù)包;
步驟d:數(shù)據(jù)庫(kù)處理層對(duì)目標(biāo)數(shù)據(jù)包進(jìn)行計(jì)算,對(duì)數(shù)據(jù)包分拆后,根據(jù)數(shù)據(jù)包指令的類型,組合拼接生成適合sql數(shù)據(jù)庫(kù)工具調(diào)取的sql數(shù)據(jù)包;數(shù)據(jù)包指令的類型包括查詢,插入和修改;
步驟e:數(shù)據(jù)庫(kù)處理層將所述sql數(shù)據(jù)包放在sql數(shù)據(jù)庫(kù)工具中進(jìn)行執(zhí)行;sql數(shù)據(jù)庫(kù)工具為sql數(shù)據(jù)包自動(dòng)分配數(shù)據(jù)庫(kù)服務(wù)器;
步驟f:數(shù)據(jù)庫(kù)處理層將sql數(shù)據(jù)包發(fā)送給分配好的數(shù)據(jù)庫(kù)服務(wù)器中進(jìn)行存儲(chǔ);
步驟9:視圖層建立以c/s為構(gòu)架的系統(tǒng)構(gòu)架,并建立相應(yīng)的網(wǎng)站模塊;
步驟10:視圖層通過(guò)路由器開放物理接口,方便外部設(shè)備訪問(wèn)優(yōu)化部署服務(wù)器并讀取目標(biāo)數(shù)據(jù);
步驟11:視圖層對(duì)外開放所述網(wǎng)站模塊的訪問(wèn)地址,方便外部系統(tǒng)進(jìn)行訪問(wèn)并讀取目標(biāo)數(shù)據(jù)。
所述系統(tǒng)函數(shù)模塊存儲(chǔ)在單獨(dú)的存儲(chǔ)介質(zhì)中,所述存儲(chǔ)介質(zhì)為硬盤。
所述優(yōu)化部署服務(wù)器為服務(wù)器集群。
本發(fā)明所述的一種為軟件系統(tǒng)的快速搭建提供快速擴(kuò)展的方法,實(shí)現(xiàn)了一種通用的底層系統(tǒng),為軟件系統(tǒng)的快速搭建提供了可靠、快速和可擴(kuò)展的方法,本發(fā)明提供的軟件系統(tǒng)框架,管理方便,大幅減少了系統(tǒng)開發(fā)的成本,有效管理了整個(gè)系統(tǒng)的各個(gè)模塊,減少耦合操作,減輕操作人員負(fù)擔(dān)。
附圖說(shuō)明
圖1是本發(fā)明的系統(tǒng)框架圖;
圖2是本發(fā)明的總流程圖;
圖3是本發(fā)明的步驟8的流程圖。
具體實(shí)施方式
如圖1-圖3所示的一種為軟件系統(tǒng)的快速搭建提供快速擴(kuò)展的方法,包括如下步驟:
步驟1:建立軟件系統(tǒng)框架,軟件系統(tǒng)框架包括數(shù)個(gè)系統(tǒng)服務(wù)器、數(shù)個(gè)數(shù)據(jù)庫(kù)服務(wù)器、優(yōu)化部署服務(wù)器和路由器,所有系統(tǒng)服務(wù)器、所有數(shù)據(jù)庫(kù)服務(wù)器和路由器均通過(guò)網(wǎng)線連接優(yōu)化部署服務(wù)器;系統(tǒng)服務(wù)器為軟件系統(tǒng)框架的底層服務(wù)器,用于輸出軟件所產(chǎn)生的數(shù)據(jù),即源數(shù)據(jù);
步驟2:在優(yōu)化部署服務(wù)器中建立控制層、視圖層、數(shù)據(jù)庫(kù)處理層和系統(tǒng)函數(shù)模塊;
步驟3:所有系統(tǒng)服務(wù)器均向優(yōu)化部署服務(wù)器傳輸源數(shù)據(jù),控制層獲取源數(shù)據(jù);
步驟4:系統(tǒng)函數(shù)模塊根據(jù)其內(nèi)部存儲(chǔ)的所有函數(shù)制定函數(shù)目錄,控制層從系統(tǒng)函數(shù)模塊中獲取函數(shù)目錄,控制層根據(jù)函數(shù)目錄對(duì)源數(shù)據(jù)進(jìn)行歸類處理,并制定源數(shù)據(jù)與其對(duì)應(yīng)函數(shù)的映射目錄;
步驟5:控制層根據(jù)映射目錄獲取相應(yīng)的函數(shù),并對(duì)源數(shù)據(jù)分配相應(yīng)的函數(shù);
步驟6:控制層根據(jù)函數(shù)的規(guī)則對(duì)源數(shù)據(jù)進(jìn)行計(jì)算處理,生成目標(biāo)數(shù)據(jù);
步驟7:控制層將目標(biāo)數(shù)據(jù)同時(shí)傳送給數(shù)據(jù)庫(kù)處理層和視圖層;
步驟8:數(shù)據(jù)庫(kù)處理層按以下步驟對(duì)目標(biāo)數(shù)據(jù)進(jìn)行處理:
步驟a:控制層對(duì)數(shù)據(jù)庫(kù)處理層發(fā)出數(shù)據(jù)操作指令;數(shù)據(jù)庫(kù)處理層接收到數(shù)據(jù)操作指令后執(zhí)行步驟b;否則執(zhí)行步驟a;
步驟b:數(shù)據(jù)庫(kù)處理層對(duì)目標(biāo)數(shù)據(jù)中的非法字符進(jìn)行隔離,生成合法目標(biāo)數(shù)據(jù);
步驟c:數(shù)據(jù)庫(kù)處理層對(duì)合法目標(biāo)數(shù)據(jù)進(jìn)行打包處理,生成目標(biāo)數(shù)據(jù)包;
步驟d:數(shù)據(jù)庫(kù)處理層對(duì)目標(biāo)數(shù)據(jù)包進(jìn)行計(jì)算,對(duì)數(shù)據(jù)包分拆后,根據(jù)數(shù)據(jù)包指令的類型,組合拼接生成適合sql數(shù)據(jù)庫(kù)工具調(diào)取的sql數(shù)據(jù)包;數(shù)據(jù)包指令的類型包括查詢,插入和修改;
步驟e:數(shù)據(jù)庫(kù)處理層將所述sql數(shù)據(jù)包放在sql數(shù)據(jù)庫(kù)工具中進(jìn)行執(zhí)行;sql數(shù)據(jù)庫(kù)工具為sql數(shù)據(jù)包自動(dòng)分配數(shù)據(jù)庫(kù)服務(wù)器;
步驟f:數(shù)據(jù)庫(kù)處理層將sql數(shù)據(jù)包發(fā)送給分配好的數(shù)據(jù)庫(kù)服務(wù)器中進(jìn)行存儲(chǔ);
步驟9:視圖層建立以c/s為構(gòu)架的系統(tǒng)構(gòu)架,并建立相應(yīng)的網(wǎng)站模塊;
步驟10:視圖層通過(guò)路由器開放物理接口,方便外部設(shè)備訪問(wèn)優(yōu)化部署服務(wù)器并讀取目標(biāo)數(shù)據(jù);
步驟11:視圖層對(duì)外開放所述網(wǎng)站模塊的訪問(wèn)地址,方便外部系統(tǒng)進(jìn)行訪問(wèn)并讀取目標(biāo)數(shù)據(jù)。
所述系統(tǒng)函數(shù)模塊存儲(chǔ)在單獨(dú)的存儲(chǔ)介質(zhì)中,所述存儲(chǔ)介質(zhì)為硬盤。
所述優(yōu)化部署服務(wù)器為服務(wù)器集群。
本發(fā)明需要所述優(yōu)化部署服務(wù)器進(jìn)行優(yōu)化部署整個(gè)軟件系統(tǒng)框架,軟件系統(tǒng)框架可以同時(shí)被多個(gè)外部系統(tǒng)加載使用。
數(shù)據(jù)庫(kù)處理層對(duì)所有讀取和插入數(shù)據(jù)庫(kù)服務(wù)器的數(shù)據(jù)進(jìn)行封裝打包處理,并且去除其他的非法數(shù)據(jù),形成數(shù)據(jù)orm。
數(shù)據(jù)庫(kù)處理層對(duì)所有的sql語(yǔ)句進(jìn)行優(yōu)化處理,自動(dòng)生成優(yōu)化過(guò)得sql語(yǔ)句,拒絕慢查詢,可以隨時(shí)切換多個(gè)數(shù)據(jù)庫(kù)配置,可以連接多臺(tái)數(shù)據(jù)庫(kù);所有數(shù)據(jù)操作都有日志保障,可以記錄相關(guān)的數(shù)據(jù)庫(kù)操作,保證數(shù)據(jù)可回滾。
系統(tǒng)函數(shù)模塊存儲(chǔ)在單獨(dú)的硬盤中,可存儲(chǔ)大量的函數(shù),控制層可以隨時(shí)使用,所述函數(shù)包括日期函數(shù),路由函數(shù),session函數(shù),郵件函數(shù),下載函數(shù),語(yǔ)言函數(shù),xml函數(shù)等。
控制層與數(shù)據(jù)庫(kù)處理層在執(zhí)行線程上完全剝離,解決了耦合問(wèn)題,整個(gè)架構(gòu)非常的清晰明確,控制層可以隨意改變?cè)L問(wèn)路徑,不受數(shù)據(jù)影響,同時(shí)在控制層可以調(diào)用相關(guān)的函數(shù),模式簡(jiǎn)單,提高了很大的效率。
本發(fā)明所述的一種為軟件系統(tǒng)的快速搭建提供快速擴(kuò)展的方法,實(shí)現(xiàn)了一種通用的底層系統(tǒng),為軟件系統(tǒng)的快速搭建提供了可靠、快速和可擴(kuò)展的方法,本發(fā)明提供的軟件系統(tǒng)框架,管理方便,大幅減少了系統(tǒng)開發(fā)的成本,有效管理了整個(gè)系統(tǒng)的各個(gè)模塊,減少耦合操作,減輕操作人員負(fù)擔(dān)。