李進 張?zhí)?/p>
摘 要:充分利用智能手機終端的主動定位、多媒體信息播放、條碼識別、數(shù)據(jù)共享、3G/4G通信等功能,實現(xiàn)企業(yè)關聯(lián)信息在移動終端上的智能推送和方便的服務交互。
關鍵詞:社交網(wǎng)絡模式;企業(yè)移動信息化;研究
1 主要研究內容
在傳統(tǒng)的企業(yè)服務信息化解決方案中,如何實現(xiàn)有效的生成業(yè)務以及數(shù)據(jù)共享一直是一個老生常談的問題,于是有了諸如EAI、EDC、SOA等解決方案,但這些方案復雜而且成本高昂,難以適應當前移動互聯(lián)網(wǎng)應用高效低成本的應用需求,而到了移動互聯(lián)網(wǎng)時代,面對越來越強烈移動信息的需求,這個問題日益尖銳,本研究將針對這一問題進行深入研究,通過創(chuàng)新一種解決方案——微服務模式,有效地解決了這一難題。
假設目前有三個系統(tǒng)分別運行A、B、C三個應用,現(xiàn)在有了新的需求,需要上一個新的應用系統(tǒng)D,但需要A系統(tǒng)提供數(shù)據(jù)a1、a2,需要B系統(tǒng)提供數(shù)據(jù)b1、b2、b3,需要C系統(tǒng)提供數(shù)據(jù)c1,按照傳統(tǒng)思路,D系統(tǒng)需要分別與A、B、C系統(tǒng)建立接口關系,通過相應的接口協(xié)議實現(xiàn)彼此之間的數(shù)據(jù)交換。如果這些系統(tǒng)分屬不同服務提供商,由不同提供商在不同時期建設完成,那么D系統(tǒng)的建設過程中所面臨的難度就可想而知了。
采用微服務模式的解決方案后,D系統(tǒng)把A、B、C系統(tǒng)加入到自己的共享域(類似于朋友圈)并關注它們的相應數(shù)據(jù),A、B、C系統(tǒng)授權D系統(tǒng)作為自己的共享對象(相對于好友)并共享相應數(shù)據(jù),完成這些系統(tǒng)設置后,D系統(tǒng)就有了一個(a1、a2、b1、b2、b3、c1)這樣的共享數(shù)據(jù)視圖(類似于聊天群),這樣D就可以隨時訪問A、B、C系統(tǒng)的共享數(shù)據(jù)了,另外,有了這個機制后,系統(tǒng)間消息交互也變得非常容易——互相@對方即可。
但這又引出來一個問題,如果將A、B、C這三個老系統(tǒng)改造成能夠適應微服務模式的架構,比起前面提到的傳統(tǒng)做法,其工作量只會更大,因此這就又引出了一個需求,需要有一個中間產(chǎn)品分別從A、B、C系統(tǒng)把相應的數(shù)據(jù)提取出來,形成(a1、a2、b1、b2、b3、c1)這樣的視圖提供給D系統(tǒng)。這種方式其實就是通過中間產(chǎn)品主動關注A、B、C系統(tǒng)中的相應數(shù)據(jù),而不是由這些系統(tǒng)主動共享出來,這樣的話就不會對原有系統(tǒng)造成任何影響,它們所需做的工作就是開放其數(shù)據(jù)訪問的權限。這個中間產(chǎn)品在理論上可以實現(xiàn)與任何業(yè)務系統(tǒng),包括像微信、易信、微博等社交媒體的對接。
本研究實現(xiàn)了企業(yè)IT系統(tǒng)中的服務內容與采用微信、易信等流行社交媒體的對接,通過這些社交媒體的公眾號即可向移動終端用戶提供服務。
2 關鍵技術問題
本研究重點在于充分體現(xiàn)了當前移動互聯(lián)網(wǎng)應用當中的幾個最為流行的元素,如社交網(wǎng)絡、終端App等,可實現(xiàn)與主流社交媒體的無縫對接,可以極大地利用當前流行社交媒體所具備的廣泛的用戶基礎,快速地借助這些媒體渠道將服務推送到廣大用戶的移動終端上。
2.1 終端應用容器與綜合管控
目前的移動互聯(lián)網(wǎng)App有一種越來越復雜化的傾向,但如果把這些App抽象一下,全部可以歸結為“首屏→事件→下一屏→事件→下一屏→……→結束”這種機制(即“有限狀態(tài)機”機制),每一屏中可以包括圖片、視頻、音頻、文字等內容元素,而這些內容又是可以從所關注的后臺應用中獲取的,這樣的話終端上只要有一個應用支撐框架,或者可以叫做應用容器,任何人都可以很方便按照前面提到的機制開發(fā)自己的App腳本實例,再用應用容器進行封裝,一個專屬于自己的定制App就生成了。
由此不難看出,采用微服務模式后,App更多的不是被“開發(fā)”出來的,而是被“編輯”出來的,這樣就大大降低了服務提供者向用戶提供自己專用App的技術門檻。通過這種方式,將App當中的底層控制操作盡可能地封裝,對外只提供與業(yè)務相關聯(lián)的組件內容讓業(yè)務人員去定制,這樣業(yè)務人員就專注于他的業(yè)務邏輯即可,而無需關注具體技術實現(xiàn)細節(jié)。
2.2 統(tǒng)一消息管理機制的構建
(1)基于規(guī)則引擎的協(xié)議自主適配:基于規(guī)則引擎,通過多種協(xié)議的自主適配,屏蔽各傳感器接入不同標準的差異。目前已在使用當中的各類行業(yè)終端,修改其上的應用使之兼容協(xié)議都會存在或多或少的困難和障礙,甚至短期內無法實現(xiàn),本框架的關鍵性技術就是進行協(xié)議轉換。
基于規(guī)則引擎的網(wǎng)絡協(xié)議轉換適配器類似于互聯(lián)網(wǎng)數(shù)據(jù)采集和傳輸?shù)目晒芾砜蚣艿那爸脵C,把各種網(wǎng)絡協(xié)議終端的協(xié)議包轉換成標準協(xié)議。協(xié)議轉換服務器采取插件機制,根據(jù)需要為不同協(xié)議提供不同的協(xié)議轉換插件。部署協(xié)議轉換器后,靈活支持各種不同網(wǎng)絡協(xié)議。協(xié)議轉換器插件使用熱部署的方式。在事務驅動的過程中,規(guī)則引擎除了負責適配工作,還可以支持事件業(yè)務決策。
(2)信息安全化,使用數(shù)據(jù)安全與認證技術,對互聯(lián)網(wǎng)傳輸信息進行安全管理服務,增強安全機制?;ヂ?lián)網(wǎng)的安全一直是阻礙其發(fā)展的另一重要原因,要做到信息的安全性,應建立一套安全認證體系,包括用戶的認證、識別、授權等一整套流程。
根據(jù)互聯(lián)網(wǎng)終端及網(wǎng)絡設備的具體特點,在訪問控制、傳輸安全、密鑰管理、安全策略等多層次上,綜合身份認證、地址綁定、接入控制、密鑰分發(fā)更換、應用過濾等安全措施,用以提高互聯(lián)網(wǎng)系統(tǒng)的整體安全性。
(3)傳輸消息的高效處理。指利用高效可靠的消息傳輸機制進行平臺無關的數(shù)據(jù)交流,并基于數(shù)據(jù)通信來進行分布式集成,通過提供消息傳遞和消息排隊的模型,擴展進程間通信,本項目的傳輸消息框架主要基于ACE自適應通信環(huán)境技術來開發(fā)。
ACE自適應通信環(huán)境(Adaptive Communication Environment)是可以自由使用、開放源碼和高度可移植的的面向對象(OO)框架(Framework),在其中實現(xiàn)了許多用于并發(fā)通信軟件的核心模式。ACE提供了一組豐富的可復用C++Wrapper Facade(包裝外觀)和框架組件,可跨越多種平臺完成通用的通信軟件任務,其中包括:事件多路分離和事件處理器分派、信號處理、服務初始化、進程間通信、共享內存管理、消息路由、分布式服務動態(tài)(重)配置、并發(fā)執(zhí)行和同步等。
3 可視化移動互聯(lián)網(wǎng)應用快速生成技術
基于終端的業(yè)務控制過程及業(yè)務邏輯過程均被抽象為“狀態(tài)”、“事件”、“動作”這三個要素,利用這三個要素就可構建出應用實現(xiàn)過程的控制腳本,過程中的所有技術性細節(jié)均可被封裝。平臺提供可視化的開發(fā)環(huán)境,將封裝后的各功能組件、標準事件動作、流程管理等以圖形化的形式展現(xiàn),業(yè)務開發(fā)人員則可利用這些標準化的開發(fā)組件在可視化環(huán)境中生成面向各類具體應用的模板,并可在可視化環(huán)境中進行應用腳本的設計及仿真測試。應用模板的實質就是一個沒有實例化的應用,作為最終的使用者,只需要以應用模板為基礎,在模板的框架內填入自己的應用數(shù)據(jù),一個專屬于自己的定制化應用就生成了,整個過程中使用者無需關注任何技術層面的內容。