文/章勁松
近幾年,隨著移動互聯網和新媒體技術的發展,在傳媒領域、商業領域、政務和民生服務領域涌現出大量的客戶端。在一個報業集團可能會有多個新聞客戶端、網站。這些客戶端、網站往往是由不同廠商開發實施的,不但造成了系統重復建設和銜接問題,還增加了業務流和數據流的管理難度。
管控平臺的建設目的首先是打造靈活高效的新一代發布體系架構,提供客戶端和網站產品的建設標準與接口規范,統一管理系統和業務的接入,避免信息孤島和煙囪式系統。
管控平臺提供第三方服務的接入支持。集團系統平臺的各服務模塊不僅可以面向集團自建的客戶端提供服務,也支持向合作伙伴的客戶端提供服務。客戶端與服務端的解耦,可以自由升級、替換、插拔服務,實現不更新客戶端,動態發布新的功能到客戶端。通過組合各種業務服務快速開發新的客戶端、網站應用。
管控平臺能夠支持多個發布終端和網站的管理,多個終端和網站可以獨立管理,每個終端和網站擁有自己的獨立域名、欄目、用戶等;針對不同的終端和網站可以使用新的域名,進行在同一個后臺相對獨立的管理,可以調用多個后臺模塊支持;可以為每個站點指定不同的用戶,授權不同的管理員負責管理、發布不同的站點,滿足不同規模用戶的多級管理需要 ;支持不同終端之間的數據共享。
管控平臺架構遵從現有工作流程出發,充分考慮系統管理和操作人員的簡捷性、靈活性等方面的具體要求,利用先進的主流技術架構,確保系統的強壯性和可升級性,系統總體架構設計如圖1所示。
管控平臺采用模塊化、組件化、面向對象設計。通過合理的架構設計,具備良好的集成和擴充能力,實現多種不同資源的嵌入整合,滿足今后各系統的管理、升級、擴充和增加接入等要求。
管控平臺采用分布式部署,各模塊操作功能以插件安裝的形式進行配置、刪除,任意模塊的操作功能都可分布至一組服務器,模塊可獨立升級、替換。具備良好的兼容能力,支持平滑的、方便的系統升級與擴容,并發用戶數不受應用系統本身限制,網絡帶寬及服務器性能的影響能夠采用CDN和分布式部署解決。
管控平臺充分考慮足夠的可擴展性和互連性,滿足現有的網絡與硬件資源和擴展及系統二次開發的需要,并支持未來可能出現的新業務的需要。
管控平臺具有接入系統版本控制功能,以應用商店的模式展示接管系統的新版本功能,提供線上升級、一鍵更新等功能。第三方系統按照管控平臺的接口規范開發版本升級功能。各系統模塊的版本號獨立,提供實時查詢,支持新老版本并行和切換。

圖1
微服務架構(Microservice Architect)是一種架構模式,它提倡將單體架構的應用劃分成一組小的服務,服務之間互相協調、互相配合,為用戶提供最終價值。每個服務運行在其獨立的進程中,服務與服務之間采用輕量級的通信機制互相溝通。每個服務都圍繞著具體業務進行構建,并且能夠被獨立地部署到生產環境、類生產環境等。
微服務架構支持技術多樣性,系統具有彈性、易擴展、易部署、便于組合和優化置換的特點,管控平臺在充分吸收微服務架構的優點后,在設計、開發、測試、部署、運維上采用了微服務架構。
將APP服務端的各業務分解成獨立的服務,服務啟動后主動向服務目錄中心注冊。對于第三方服務,通過服務代理進行接口隔離后,也同樣向服務目錄中心進行注冊。APP端首先通過證書密鑰訪問授權中心,根據密鑰不同獲得不同訪問權限的令牌,使用令牌向服務目錄中心請求服務地址,即服務發現過程,服務目錄中心審核權限通過以后,將真實的REST服務地址返回給APP端。APP端利用REST服務地址和令牌,訪問響應的服務(圖2)。

圖2
由管控平臺制定平臺接口交互規范,任何第三方系統接入到管控平臺都須遵照此規范。接口規范包括系統配置、管理員認證、版本控制、數據傳輸、用戶認證交互、日志傳輸等。
接口應實現對外部系統的接入提供企業級的支持,在系統的高并發和大容量的基礎上提供安全可靠的接入,支持并發增加時系統資源的動態擴展。支持系統平滑移植,在進行擴容、新業務擴展時,應能提供快速、方便和準確的實現方式。支持同步請求/應答、異步請求/應答、會話、廣播通知方式、事件訂閱方式、可靠消息傳輸等方式。
提供完善的信息安全和監控機制,實現對信息的全面保護和運行情況的實時監控,保證系統的正常運行,應防止大量訪問以及大量占用資源的情況發生,保證系統的健壯性。
支持任意模塊支持接口管理,接口支持對外轉發,并支持鑒權操作;支持接口路由功能,能夠對接口協議、請求方式、數據格式、參數處理、靜態緩存等進行設置;支持http接口直接調用展示數據;支持接口在線封裝;支持對外接口防放大攻擊以及提供第三方系統登錄鑒權認證等。
管控平臺統一管理接入系統的管理員、后臺入駐用戶,實現單點登錄認證、分布授權。管控平臺通過權限設置,進入不同的系統管理。根據用戶權限的不同,提供個性化的管理界面。
管控平臺用戶統一認證包括用戶基本信息的管理,如:賬戶名、昵稱、真實姓名、身份證、綁定賬戶、個人照片、郵箱等。用戶在不同客戶端、活動平臺的具體信息由相應的平臺管理。
管控平臺負責管理用戶的服務模塊和功能的訪問權限,具體服務模塊內的權限由服務模塊本身進行管理。
支持用戶的分組分級管理,能夠區分用戶通過不同客戶端和渠道注冊。分級的設計應根據用戶在各客戶端和網站上使用的情況進行綜合。
提供用戶統一認證管理,包括用戶注冊,多種級別的認證方式,用戶注冊信息的管理等。為接入系統提供標準用戶管理接口,實現接入系統用戶的統一管理。至少具備手機號注冊,微博、微信、QQ等第三方賬戶注冊,身份證認證等功能。提供開發的用戶認證接口,通過SDK、API、URL等方式向評論、互動活動、服務等第三方系統提供用戶信息交互。
系統管理員通過管控平臺可以對接入系統進行可視化配置管理。系統實現對接入系統模塊的嵌入和導航,后臺用戶登錄接入界面后可方便地選擇相應的模塊進行操作,無需二次登錄,并可根據工作需要自定義操作界面。
具有完整的功能模塊配置管理界面,管理員登錄管控平臺后, 能夠明晰地看到及接入的系統模塊、app管理、用戶管理、第三方系統等,可以方便地進行調度和配置。
系統提供直觀的模塊接入情況、版本情況列表,支持不同版本的模塊并存。管理員通過選擇配置,即可實現快速平穩切換以及不同模塊的替代切換。
新華報業傳媒集團全媒體客戶端支撐云平臺項目采用了管控平臺架構進行開發建設,支持交匯點新聞客戶端和網站的管理發布。根據政務信息服務、交匯號入駐等實際業務需求,打造了一個開放的內容入駐平臺。通過標準化接口實現了第三方服務模塊的接入,在統一用戶認證和用戶信息管理的基礎上實現了服務模塊的統一調度,對務模塊的接入管理支持跳轉、接管和嵌入等多種方式,真正做到靈活可控。
[1] 郭棟,王偉,曾國蓀.一種基于微服務架構的新型云件PaaS平臺[J].信息網絡安全,2015(2):15-20
[2] Building Microservices by Sam Newman Copyright 2015 Published by O’Reilly Media.
[3] MICROSERVICES From Design to Deployment by Chris Richardson with Floyd Smith.