摘要:隨著因特網技術的不斷更新,基于網絡的短信平臺系統日益普及,傳統短信系統的開發和使用都不夠靈活。文章在探討一種更靈活的基于J2EE架構的短信系統的基礎上,探究如何增強系統的擴展性。
關鍵詞:短信系統;J2EE;擴展性
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-2374(2012)25-0019-02
隨著網絡信息化的日益發展和手機使用的普及,短信交流已成為人們生活中必不可少的一種社交方式,涵蓋了各項媒體及日常生活服務。傳統的短信平臺大多基于C/S模式,客戶端相對臃腫,可擴展性能也不好。
因此,本文在詳細分析怎樣基于J2EE架構的短信平臺系統的基礎上,探討如何拓展短信系統的可擴展性,從而實現一個可擴展可復用的跨網絡短信通用系統。
1 基于J2EE架構的短信系統的設計
基于J2EE架構的短信系統,使用JSP/Servlet/EJB/JDBC結構搭建,使用JSP、HTML、XML、JavaBean作為前臺程序,EJB組件完成中間業務邏輯,后臺采用Oracle數據庫系統作為后臺數據庫。
Web層的Servlet接收用戶輸入的信息,根據信息調用不同的JSP程序反饋給客戶端。JSP/Servlet通過HTTP連接在服務端和客戶端傳遞數據,再把參數傳遞給事先編好的EJB組件,由它們對數據庫進行操作,這樣就把系統內部的數據封裝保護起來,最后把數據庫返回的結果由JSP/Servlet傳達到客戶端顯示。系統結構如圖1所示:
圖1 短信平臺系統架構
2 短信平臺系統可擴展性研究
系統可擴展性就是所謂的系統可以無限擴大、功能無限增加,使用戶可以處理更大規模的業務。短信系統采用多接口,如Web Service接口和短信
數據庫,使其他系統可以通過接口與短信系統在同一個平臺上使用,進而擴展了平臺的功能。跨網絡的技術方案,使系統在使用上可以面向更多的運
營商。
2.1 基于數據庫的擴展
本短信系統的數據庫,與其他系統設計格式一致的數據表,對外提供統一的數據接口。一旦其他系統需要短信服務,只需在對應的業務邏輯處理模塊中調用數據庫接口,處理業務邏輯并將對應的數據通過數據接口保存到短信平臺的數據庫服務器上。系統將定時掃描數據庫表,若發現有需要發送的數據,調用短信發送模塊自動將短信發送出去。
系統數據庫內需要創建幾個專用的數據表,增加的系統如果發送短信時,只需將接收手機號、發送內容等信息寫入sms_send表,短信服務程序會按程序設定的時間讀取表中記錄,進行發送;針對每一個發送目標及拆分后的短信生成發送結果記錄寫入查詢表,用戶系統可查詢短信最終的發送狀態;程序將產生的日志信息寫入sms_report表,增加的外接系統可以通過平臺接口查詢收到的短信記錄和日志信息。
2.2 基于web service接口擴展
本短信系統采用J2EE的架構,對于一些異構系統的接入,我們采用Web Service接口技術來
實現。
Web接口設計:設計一個接收表、一個發送表和兩個COM組件(Websendmsg.dll和Web.receivemsg.dll),分別實現發送和接受的功能,動態網頁可以通過這兩個組件與平臺通信。其他系統可以通過給定的接口調用格式,編輯wsdl的xml語言或者通過調用系統給定的接口封裝包調用短信系統的Web Service接口,實現與短信平臺系統的
結合。
2.3 多級SP接口擴展
現有短信平臺幾乎都是單一的網絡平臺,平臺支持移動、電信或聯通,這樣就會導致無法實現跨運營商的短信發送、跨運營商發送價格昂貴、數據丟包情況嚴重等。如果遇到應急突發故障,短信平臺就會癱瘓而無法使用。
由于國內的3大運營商在互聯網短信網關的通信協議標準不一致,如中國移動采用的是CMPP協議,中國聯通采用SGIP協議,中國電信則采用SMGP協議。因此系統采用在應用層SMPP封裝好短信內容,再進行選擇發送,根據接收者所屬的運營商網絡的不同,分別連接不同的運營商網關。目前,系統與移動的鏈接是通過移動提供的信息機中轉,對于聯通和電信則采用調用sp商提供的程序的方式。
3 結語
隨著用戶應用規模和對短信平臺系統需求功能的不斷提高、調整和擴大,對于一個短信平臺的可擴展性要求會越來越高。本文通過分析當前短信平臺系統的一些不足,提出了一種基于J2EE架構下的短信平臺系統,并對其可擴展性方式進行了研究和闡述。
參考文獻
[1] 蔡明,陳永運.J2EE架構的研究與應用[J].計算機應用與軟件.
[2] 劉曉華.J2EE企業級應用開發[M].北京:電子工業出版社,2003:378-381.
[3] 樊建輝.基于Web Service的工作流系統的研究與實現
[D].哈爾濱工程大學,2009.
[4] Rod Johnson.J2EE設計開發編程指南[M].北京:電子工業出版社,2003.
(責任編輯:文森)