LQuery的設(shè)計原則考慮以下幾個方面的要求:性能、可靠性、吞吐量、可擴充性、可管理性、可重用性和安全性。
LQuery的性能一般用一個用戶終端對某一個操作的響應(yīng)時間來衡量,如不考慮后臺數(shù)據(jù)庫性能的開銷,LQuery對以下各類操作的處理時間為:
操作類型 |
處理時間 |
對表或基于存儲過程的數(shù)據(jù)清單 |
不超過2秒 |
對表的匯總性角度分析 |
不超過10秒 |
對后臺返回的數(shù)據(jù)進行圖形展示 |
不超過2秒 |
LQuery在生產(chǎn)運行系統(tǒng)中應(yīng)該支持7×24小時不間斷運行的要求。
LQuery應(yīng)該支持一定的并發(fā)量,保證在多個前端用戶同時進行查詢分析的時候,系統(tǒng)能維持客戶滿意的處理性能并同時保證系統(tǒng)穩(wěn)定運行不崩潰。系統(tǒng)能支持的并發(fā)用戶數(shù)應(yīng)至少在10個以上。
LQuery的可擴充性體現(xiàn)在兩個層面:應(yīng)用層和開發(fā)層。
應(yīng)用層的可擴充性是指平臺提供的配置化的增加應(yīng)用查詢分析功能的能力,用戶在不影響已有系統(tǒng)功能的前提下可以方便地增加額外的功能或修改已有功能。
開發(fā)層的可擴充性體現(xiàn)在源程序的易于擴充和修改,這往往通過低耦合、接口和封裝等設(shè)計技術(shù)去實現(xiàn)。
LQuery應(yīng)該有友好的用戶界面,易于管理和維護,并允許動態(tài)的系統(tǒng)配置管理。
LQuery的組件應(yīng)該能最大程度可重用,以提高開發(fā)和管理效率。
LQuery通過提供用戶認證、功能權(quán)限和數(shù)據(jù)權(quán)限從而保證系統(tǒng)的安全性。
LQuery使用三層的B/S體系架構(gòu),即將應(yīng)用功能分成表示層、功能層和數(shù)據(jù)層三個部分。表示層是應(yīng)用的用戶接口部分,它負擔(dān)應(yīng)用和用戶間的對話。功能層負責(zé)處理具體的業(yè)務(wù)邏輯。數(shù)據(jù)層負責(zé)對數(shù)據(jù)庫或文件數(shù)據(jù)的讀寫。
這種三層的體系結(jié)構(gòu)具有以下特點和優(yōu)越性:
客戶端零維護、可擴展性好、安全性好和可移植性好。
JAVA/J2EE/SOA/XML/AJAX技術(shù)可以支持分布式的企業(yè)應(yīng)用模型,可以提供可擴展的,模塊化的組件開發(fā)模式和組件裝配技術(shù)。
基于JAVA/J2EE的企業(yè)應(yīng)用可以方便快捷地部署到任意JAVA應(yīng)用服務(wù)其平臺產(chǎn)品之上,從而實現(xiàn)“一次開發(fā)、處處可用”的理想目標。
基于SOA的服務(wù)請求處理模式可以更好地解決企業(yè)內(nèi)部多種系統(tǒng)之間的互聯(lián)互通及數(shù)據(jù)共享,實現(xiàn)系統(tǒng)之間的輕耦合。而XML技術(shù)更是為系統(tǒng)之間的數(shù)據(jù)傳遞提供了更標準的表達方式。
AJAX技術(shù)的廣泛應(yīng)用更是改善了用戶的操作體驗,通過頁面的無刷新技術(shù),使用戶的頁面執(zhí)行效率得到了極大的提高。
LQuery可以對數(shù)據(jù)庫中的表或視圖進行清單式查詢,也可以對能返回數(shù)據(jù)的存儲過程做清單式查詢,也可以對表或視圖進行匯總性的分析查詢。
LQuery各個查詢功能是通過XML文件配置產(chǎn)生的,對各個功能的修改只需要修改配置文件,無需重新啟動應(yīng)用服務(wù)器或重新登錄。
LQuery所需的各類代碼表是從XML配置文件產(chǎn)生的或者動態(tài)從數(shù)據(jù)庫讀取,無需在源程序中維護。
LQuery通過對XML的配置,可以對數(shù)據(jù)庫表記錄的內(nèi)容直接進行修改操作,同時也可以對文本文件或excel文件的進行修改或批量讀取。
LQuery從在個層面上來說可以是struts+hibernate的替代品,但是LQuery使用起來更方便,功能更強大。
LQuery對查詢結(jié)果可以以系統(tǒng)自定義的風(fēng)格進行展現(xiàn),保持界面的一致性,用戶也可以自己定義頁面展現(xiàn)的風(fēng)格。
系統(tǒng)的自定義的風(fēng)格有:表格、餅圖、柱狀圖、線圖、柱狀圖3D和餅圖3D等。
通過LQuery的定制,開發(fā)者可以自己開發(fā)數(shù)據(jù)的展現(xiàn)頁面。
LQuery對每一個用戶請求URL是通過WEB服務(wù)器提供的過濾器技術(shù)Filter實現(xiàn)合法性檢查的,系統(tǒng)通過配置文件提供了對不同的頁面的檢查方式。
在Filter過濾器基礎(chǔ)上,平臺提供了對操作人員及及其機構(gòu)進行權(quán)限控制的功能,而業(yè)務(wù)功能模塊無需關(guān)注安全控制是怎么實現(xiàn)的,只需專注業(yè)務(wù)功能的實現(xiàn)。
LQuery可以實現(xiàn)基于用戶透明的跨數(shù)據(jù)庫訪問(查詢及修改等〕支持,以LQuery為架構(gòu)的應(yīng)用系統(tǒng)可以輕松地同時與任意多個外圍業(yè)務(wù)系統(tǒng)如ERP/CRM系統(tǒng)集成。 |