1 引言
1.1 什么無紙化會議系統
無紙化會議系統是無紙化辦公的重要組成部分,其利用現代通訊技術、音頻技術、視頻技術、軟件技術,通過文件的電子交換來實現會議的無紙化,是一種全新的會議模式,為對傳統會議模式的一種變革。
1.2 J2EE 架構簡介
J2EE為一種利用Java 2平臺來簡化企業解決方案的開發、部署和管理等復雜問題的體系結構,其不僅加強了Java標準版中的許多優點,同時還提供了對EJB(Enterprise JavaBeans)、Servlet、JSP(Java Server Pages)及XML技術的全面支持。
無紙化會議系統在J2EE平臺上引入優秀的Web框架SSH來設計與開發,該系統充分利用Java技術的優勢,具有響應速度快、安全性高、易學好用等優點。
2 無紙化會議系統分析
無紙化會議系統作為會議的一種形式,具有傳統會議模式的基本功能。即該系統能夠支持會議創建、會議資料分發、會議資料回收、會議資料銷毀等,以達到傳統會議系統的基本功能。
無紙化會議系統主要分為兩個子系統:基于B/S架構的無紙化會議后臺管理系統, 基于APP/S架構的無紙化會議Pad端會議信息管理系統。
2.1 基于B/S架構的無紙化會議后臺管理系統的主要功能模塊
2.1.1 超級管理員功能模塊
超級管理員主要的功能是創建秘書科長并對秘書科長進行管理,秘書科長是實際準備會議的操作者。
2.1.2 秘書科長功能模塊
秘書科長是會議的實際操作者,負責會議設備的管理、會議創建、會議刪除、會議同步等實際工作。
設備管理:設備就是參與會議的移動終端(PAD),一臺PAD關聯一個秘書科長,一個秘書科長可以有多臺PAD,沒有注冊的PAD無法接收到會議信息,保證了會議信息的機密性。
新建會議:用于創建會議,一個會議包括會議名稱,參會者,會議議題,會議材料等。
內容管理:主要涉及會議同步、會議刪除、會議復制、會議編輯等功能。
2.2 基于APP/S架構的無紙化會議Pad端會議信息管理系統功能模塊
移動無紙化會議系統的PAD端基于Android平臺,主要功能包括登錄系統、會議信息顯示、設備信息查看、Wifi限定等。
會議登錄:設置無紙化服務器IP地址,登錄系統,進行設備注冊。
會議信息顯示:從服務器同步完會議信息后,將會議信息通過會議信息Activity呈現給參會者。
設備查看:查看PAD信息、服務器IP地址、限定的Wifi SSID等。
保密會議:機密信息不通過服務器進行同步,由機密信息操作員手動拷貝到PAD,PAD端APP再以友好的形式顯示給參會者。
3 無紙化會議系統設計
3.1 無紙化會議后臺管理系統開發設計
無紙化會議系統后臺的開發采用J2EE架構技術,以MVC設計模式為基礎,J2EE 是一個多層次的、端到端的架構體系。該體系架構包括四個部分,即客戶層、Web 層、業務層、數據層。它清晰地將一個企業應用程序劃分為客戶層、Web 層、業務層和數據層將這些層映射到J2EE 體系結構實現中可分為四個不同的功能層次。
整個系統主要分為三個部分,其中客戶端為可以是任何一臺連接到互聯網的計算機,只要能運行IE或Firefox等支持HTTP或HTTPS協議網絡瀏覽軟件即可。它通過HTTP協議向系統發起請求,也負責接受web服務器發回的響應,并顯示給最終用戶。
WEB的應用服務器端由兩部分組成:Webserver和Application Server。
數據庫端是數據集中存放的地方,應用服務器中的實體Bean通過JDBC能與之交互。在本系統中采用MySql5.5作為數據庫服務器。
3.1.1 開發環境
系統采用MyEclipse開發。Web服務器的操作系統為Ubuntu13.04服務器版,Tomcat 7作為Java運行環境和對外提供WEB服務,數據庫采用MySQL5.5。
3.1.2數據庫設計
為滿足無紙化會議后臺管理系統設備管理、創建會議、會議管理、密碼管理的功能需求,系統需要如下數據表:
(1)超級管理員信息表(超級管理員ID,超級管理員名、密碼):用于管理超級管理員信息。
(2)秘書科長信息表(秘書科長ID,秘書科長名、密碼):用于管理秘書科長信息。
(3)設備信息表(Pad硬件ID、Pad編號、Pad用戶名、狀態、關聯秘書科長、最近報告時間):用于設備管理,一臺Pad關聯指定的秘書科長,防止非法Pad接入無紙化會議系統,保證會議信息的保密性、安全性。
(4)會議信息表(會議ID,會議名、創建時間、創建者、狀態、會議材料狀態、參會者、發布時間、會議材料路徑):用于會議的總體信息如會議名稱、會議創建者、會議材料路徑等會議的主要信息。
(5)會議議題表(議題ID,議題名、會議ID、會議名、是否保密會議、創建時間):一個會議可有多個議題,議題表通過會議ID與會議信息表進行關聯。
(6)會議材料表(材料ID,材料名、議題ID,會議ID、材料路徑、是否已刪除):一個會議議題可以附加多個會議材料,會議材料表通過議題ID及會議ID與會議議題表和會議信息表進行關聯。通過會議信息表、會議議題表、會議材料表三個數據庫表可以完整描述出會議的全部信息。
(7)參會Pad設備表(參會PadID,會議ID,設備ID,設備狀態):用于管理所有參會的PAD狀態信息。
3.2 系統性能優化
3.2.1 服務器調優技術
Socket連接泄露是服務器常出現的問題,直接的后果是無法登陸服務器、服務器崩潰等嚴重問題、為最大限度的避免此類問題。在無紙化會議系統中對Ubuntu13.04服務器版的內核參數進行調優。
編輯/etc/sysctl.conf文件,加入如下四行:
net.ipv4.tcp_syncookies = 1;
net.ipv4.tcp_tw_reuse = 1;
net.ipv4.tcp_tw_recycle = 1,
net.ipv4.tcp_fin_timeout = 30。
保存好,執行/sbin/sysctl -p 讓參數生效。net.ipv4.tcp_syncookies=1,表示開啟 SYN Cookies .當出現 SYN 等待隊列溢出時,啟用 cookies 來處理,可防范少量 SYN 攻擊,默認為 0 ,表示關閉;
net.ipv4.tcp_tw_reuse=1,表示開啟重用.允許將 TIME-WAIT sockets 重新用于新的 TCP 連接,默認為 0 ,表示關閉;
net.ipv4.tcp_tw_recycle=1,表示開啟 TCP 連接中 TIME-WAIT sockets 的快速回收,默認為 0 ,表示關閉;
net.ipv4.tcp_fin_timeout 修改系 y默認的 TIMEOUT 時間。
3.2.2 數據庫連接池技術
在本系統中采用數據庫連接池機制來有效管理數據庫連接。數據庫連接池負責分配、管理和釋放數據庫連接,允許應用程序重復使用一個現有的數據庫連接,而再不是重新建立一個;釋放空閑時間超過最大空閑時間的數據庫連接來避免因為沒有釋放數據庫連接而引起的數據庫連接遺漏。
3.3 基于Android移動平臺的Pad端APP開發設計
Android架構里定義了四種應用程序結構,分別是活動(Activity)、服務(Service)、廣播和Intent接收器(Broadcast and Intent Receivers)、內容提供器(Content Provider),這四種結構構建了幾乎所有的Android應用程序。
3.3.1 開發環境
系統采用基于MyEclipse平臺的Android Development Tools(ADT)進行開發。Android操作系統版本號為4.0.4。
3.3.2 無紙化移動APP模塊設計
為實現Pad端APP的功能需求,實現設備注冊、會議登錄、會議信息顯示、會議信息管理、保密會議等功能,無紙化移動APP主要劃分為如下幾個功能模塊。
(1)登錄Activity和會議信息顯示Activity。Android中的Activity就是呈現給用戶的界面,用于人機交互,登錄Activity主要功能是輸入服務器IP,登錄無紙化會議系統服務器。會議信息顯示Activity主要用于顯示從服務器端同步過來的會議信息如會議名稱、會議議題、會議相關材料。
(2)會議信息同步Service。Service運行于后臺, 會議信息同步Service的主要功能是接收到服務器的會議同步指令后,啟動后臺線程將會議信息通過HTTP協議把會議相關資料下載到Pad端,并自動啟動會議信息顯示Activity呈現給參會者。
(3)會議信息接收Receivers。會議信息接收Receivers組件用于接收服務器的會議同步指令,它通過輪詢服務器來實現。當收到服務器的會議同步指令后,會議信息接收Receivers組件通知會議信息同步Service,由會議信息同步Service進行會議信息的同步。
(4) 會議信息通知Broadcast。會議信息通知Broadcast用于接收Android系統消息,如Android啟動消息、Wifi狀態變化消息等。
3.3.3 APP功能優化
(1)無紙化會議移動APP開機啟動。為提高會議準備效率、優化用戶體驗,當會議信息接收Receivers接收到Android系統啟動完成的消息時,立即啟動無紙化會議移動APP,省卻手動啟動APP的操作。
(2)無紙化會議系統Wifi功能優化。無紙化會議系統所用Pad一般都連在專用的Wifi上,為防止Pad登錄其他Wifi,無紙化會議移動APP先從服務器端接收到專用Wifi的信息,此后無紙化會議移動APP會自動連接入指定的專用Wifi上,防止在會議過程中,參會者登錄其他Wifi,引發信息泄露,保證會議信息的安全性。
4 應用場景及部署模式
移動無紙化會議系統適用于有移動會議及無紙化會議的政府、企業,從目前的運行情況反饋,系統運行穩定可靠,滿足使用單位的移動會議及無紙化會議的需求。
移動無紙化會議系統有兩種部署模式??蛻衄F場部署模式指客戶界面定制,在客戶指定服務器上部署無紙化會議系統服務端,在客戶會議專用PAD上安裝無紙化會議客戶端,培訓并交付使用。SaaS模式,即部署在公共無紙化會議平臺,為客戶分配會議權限及與會者賬號,以服務的方式打包交付用戶。
5 結論及展望
隨著移動互聯網不斷發展,基于移動平臺的無紙化會議系統正成為移動辦公的重要組成部分.本文所設計并實現的基于移動平臺的無紙化會議系統在服務器端基于J2EE平臺上引入優秀的Web框架Struts,具有易維護、易升級等特點,在Pad端基于Android移動操作系統,充分利用Android的特性,很好的發揮了移動平臺的特點。 基于移動平臺的無紙化會議系統已經在企業、政府機關穩定高效運行、達到預期效果,并在不斷的完善中。