xacs系統基於j**a語言,採用主流的開源技術框架,在模組設計上遵循低藕合,高內聚的原則,達到普通應用下開發簡單快速,易上手;複雜環境大規模應用情況下易整合,易部署;良好的模組化設計可以滿足方便的和其它業務系統或工單管系統整合,拓展北向介面功能。
xacs採用的技術及框架有:
1. 資料庫mysql
在xacs中整合了mysql資料庫,可以控制mysql資料隨系統的啟停而啟動停止,不需要另外安裝mysql資料庫系統。
在實際應用中,也可以根據需要選用其它資料庫系統如postgresql, oracle等,因為在系統中採用了hibernate, 可以很方便的通過修改配置檔案和匯入必要的資料庫驅動,就可以實現資料庫系統的切換。
2. spring 框架
利用spring提供的ioc容器,可以將物件之間的依賴關係交由spring進行控制,避免硬編碼所造成的過度程式耦合。有了spring,使用者不必再為單例項模式類、屬性檔案解析等這些很底層的需求編寫**,可以更專注於上層的應用。
spring可以降低各種框架的使用難度,spring提供了對各種優秀框架(如struts,hibernate、hessian、quartz)等的直接支援。
在xacs中,利用spring的ioc特性,封裝了hibernate框架、訊息處理介面和業務服務介面,由spring來管理系統中各應用例項。並且通過自動注入機制,減少了很多**量。
3. 資料庫orm框架hibernate
hibernate是乙個開放源**的物件關係對映框架,它對jdbc進行了非常輕量級的物件封裝,使得j**a程式設計師可以隨心所欲的使用物件程式設計思維來操縱資料庫。
通過hibernate支援多資料庫的特性,在xacs中可以通過修改配置檔案,來實現系統資料庫的替換。
4. 訊息匯流排jms技術 activemq
activemq 是apache出品,最流行的,能力強勁的開源訊息匯流排。activemq可以很容易內嵌到使用spring的系統裡面去。
在xacs中使用訊息匯流排的機制,有利於在大規模應用情況下,將系統分別部署在多個伺服器上,通過訊息匯流排進行分布式系統應用下資料的互動。
5. web框架wicket
apache wicket,通常被稱為wicket,她是乙個輕量級的基於元件、事件驅動的j**a
web應用程式框架。它使得開發web應用程式變得容易而輕鬆。 wicket利用乙個pojo
data beans元件使得它可以與任何持久層技術相結合。
wicket主要特點:
a) wicket符合mvc的設計原則把檢視層和控制層進行了分離;
b) 模型設計基本物件導向;
c) 自動管理物件的狀誠;
d) 極高的開發效率;
e) 學習曲線很低
6. web容器 jetty
xacs中整合了開源j**a的web容器,並將jetty 伺服器用為乙個元件,很方便的實現伺服器的管理,並且達到在整合情況下快速啟動停止。
由於xacs在web應用上符合標準的web架構,也可以方便的移植到tomcat,jboss等j**a中執行。
xacs 和 openacs比較
xacs在tr069協議實現上參考了openacs的實現,在研究了openacs 系統原始碼後對openacs改進,並且從簡單易用的角度重新設計了使用介面,下面從多個角度做乙個對比。
xacs
openacs
比較web容量
jetty
jboss
jboss屬於重量級的j2ee容器, 也是乙個管理ejb的容器和伺服器,由於openacs中使有了ejb,所以也必須選用相應的ejb容器,但是這樣就使得其缺少了可移植性。
jetty容器屬於輕量級的web容器,使用方便,啟動快速。並且xacs 也可以移植到其它web容器下。
資料持久化
hibernate
ejb在openacs中使用了實體bean來實現o/r對映。
而在xacs中則使用了hiberante。hibernate 框架的目的是把開發人員從繁瑣的資料持久化程式設計中解脫出來,提高開發效率。
web框架
wicket
richfaces、 facelets
richfaces、facelets是用於jsf的使用者介面元件套件,在國內應用較少, 並且屬於較重量級的開發技術,學習和開發難度也較高,相對效率也較差一些。
wicket則是開發快速,方便上手,通過mvc模板分離的特性,很容易先實現介面demo,也更易於系統開發除錯。
資料庫mysql
mysql
openacs的mysql資料庫是分離的資料庫,如果移植到其它資料庫需要重新修改資料庫設計,並且需要進行另外的除錯。
而xacs則是整合的mysql資料庫,當然也可以使用外部資料庫,並且也可以很方便的實現替換資料庫。
多系統支援
windows/linux/等其它jvm支援的系統
linux
openacs只可以執行在linux下,至少從目前來說只有linux的版本,移到其它系統下需要另外開發。
而xacs的**脫離了系統的限制,除資料庫需要根據不同系統調整外,系統可以在支援在多個系統平台上執行。
訊息匯流排
activemq
jboss mq
openacs使用了jboss自帶的訊息匯流排,在效能上弱於activemq ,並且在多語言支援,擴充套件性,易用性上都不如activemq。
另外,從開發的角度上來說,xacs通過乙個eclipse工程,就可以整個系統的開發,而openacs的開發則將ejb和web開發區分開來,並且需要修改很多的jboss配置檔案才可以應用到jboss容器中。xacs支援ant指令碼直接生成系統壓縮包,進一步可以改成daily build指令碼。雖然openacs支援使用者自己編寫js指令碼作為測試cpe的測試用例,但是這種方式在實際情況下很少有測試人員能夠應用,大多數測試人員還是習慣於提供操作介面的測試方式。
xacs效能指標
測試伺服器硬體: cpu: i5-3230; 記憶體:8g
在預設上報週期為1800秒(30分鐘)情況下,模擬上報裝置10000數量情況下,處理率約5.6個/秒,通過jvisualvm監控堆疊分配及**基本穩定。
智慧型客服系統開發(技術方案)
乙個智慧型客服系統,負責全部的開發任務 主要包括前端頁面開發,後台邏輯設計,中間客服與使用者之間的對話流設計 演算法部分 以及系統部署。前端頁面採用vue框架 最近比較火的乙個框架,vuejs比較貼合python的風格,所以用起來比較順手 後端採用django,典型的mvt架構,類似於android...
即拼商城系統開發玩法介紹
一 即拼 拼購系統模式玩法介紹 399元購買禮包成為會員,參與7人拼團賺錢模式。自己是團長,填滿剩下6個空位拼團成功了。滿團即可用賺來的錢複購禮包再開團,繼續賺錢。禮包佣金 直推150元 人 滑落120元 人 拼團成功可獲得780元 900元 即拼 模式有兩個核心優勢 第1個,是我們的區塊鏈溯源技術...
系統開發 系統規劃
一 系統規劃五個階段 1 專案目標和動機 2 立項價值判斷 3 專案選擇和確定 4 初步調查 5 可行性研究 包括經濟可行性,技術可行性,法律可行性,使用者使用可行性 二 可行性分析八個階段 1 複查系統目標和規模 2 分析現在系統 3 匯出新系統的高層邏輯模型 4 使用者複查 5 提出並評價解決方...