馬歡 符為偉 李皇鎖
(交通銀行信用卡中心,上海 200000)
內(nèi)容管理系統(tǒng)(Content Management System,CMS)是一種位于Web前端(Web服務(wù)器)和后端辦公系統(tǒng)或流程(內(nèi)容創(chuàng)作、編輯)之間的軟件系統(tǒng)。內(nèi)容的創(chuàng)作人員、編輯人員、發(fā)布人員使用內(nèi)容管理系統(tǒng)提交、修改、審批、發(fā)布內(nèi)容。這里指的“內(nèi)容”包括文件、表格、圖片、數(shù)據(jù)庫中的數(shù)據(jù)甚至視頻等發(fā)布于互聯(lián)網(wǎng)或內(nèi)部網(wǎng)站的信息。
內(nèi)容管理從2000年開始成為一個重要的信息應(yīng)用領(lǐng)域,能夠通過對企業(yè)各種類型的數(shù)字資產(chǎn)的產(chǎn)生、管理、增值和再利用,改善組織的運行效率和企業(yè)的競爭能力。目前,內(nèi)容管理系統(tǒng)被普遍用于組織門戶、知識管理、網(wǎng)絡(luò)論壇等方方面面。尤其是伴隨著電子商務(wù)的興起,內(nèi)容管理系統(tǒng)得到了更廣泛的應(yīng)用,大量的產(chǎn)品、營銷活動信息也在通過內(nèi)容管理系統(tǒng)進行承載傳播。
把內(nèi)容管理系統(tǒng)應(yīng)用到營銷領(lǐng)域面臨著諸多挑戰(zhàn),主要體現(xiàn)在以下幾個方面。
傳統(tǒng)內(nèi)容管理系統(tǒng),為了減輕內(nèi)容發(fā)布人員的負擔(dān),都是通過結(jié)構(gòu)化的信息錄入,匹配固定格式生成頁面,頁面千篇一律,美觀度不足。雖然有些系統(tǒng)配置了多套模板可供選擇,但是往往存在內(nèi)容管理系統(tǒng)的頁面風(fēng)格和各個業(yè)務(wù)交易系統(tǒng)不搭配、模板變更技術(shù)要求高等問題。
一些內(nèi)容管理系統(tǒng)為了解決上面的問題,提供了數(shù)字資產(chǎn)管理即把完整內(nèi)容組件包上傳的功能。首先請專業(yè)設(shè)計師設(shè)計好一組H5頁面的內(nèi)容,然后把這一組內(nèi)容整體上傳到內(nèi)容管理系統(tǒng)中。通過這種方式,很好地解決了頁面展現(xiàn)形式單調(diào)的問題,設(shè)計師可以根據(jù)產(chǎn)品和活動的要求大膽設(shè)計、渲染展示頁面。但這種方式也存在問題,如整個營銷內(nèi)容上線周期長,設(shè)計師的費用也非常高。
相比一般用作內(nèi)網(wǎng)系統(tǒng)、門戶網(wǎng)站、營銷系統(tǒng)的內(nèi)容管理平臺,主體關(guān)鍵的要求是能夠應(yīng)對不穩(wěn)定的大訪問量沖擊。一些電子商務(wù)平臺在做促銷活動時,其對營銷頁面的訪問量會達到平時的幾十倍甚至更高,傳統(tǒng)的內(nèi)容管理系統(tǒng)在性能設(shè)計上普遍不足,難以承受劇增的壓力。
傳統(tǒng)的內(nèi)容管理系統(tǒng)一般包括前、后端子系統(tǒng),用戶通過后端管理臺進行內(nèi)容維護,整個系統(tǒng)和其他系統(tǒng)之間缺少互操作的能力,如營銷活動的商品價格信息、庫存信息、活動名額信息、達標情況等無法動態(tài)展現(xiàn),只能等用戶繼續(xù)訪問到后續(xù)的業(yè)務(wù)系統(tǒng)時才能提示用戶,用戶體驗欠佳。對各個業(yè)務(wù)系統(tǒng)來說,即使是一些穩(wěn)定不變的信息,也要以人工的方式提供給內(nèi)容制作方,很容易造成兩邊信息不一致導(dǎo)致客戶投訴等問題。
目前,內(nèi)容管理平臺的發(fā)展呈現(xiàn)出如下幾個趨勢。
內(nèi)容頁面的生成不再是通過結(jié)構(gòu)化信息輸入生成固定格式的頁面,用戶可以通過“拖拉拽”的方式,從組件庫中選擇合適的組件,通過組件的屬性設(shè)置顯示的標題、圖標、位置、尺寸、層次等信息,可以即時渲染生成一個新的頁面。常用的配置還可以保存為模板重復(fù)使用,根據(jù)需要設(shè)置為系統(tǒng)級模板或用戶級模板。
孤立的單一系統(tǒng)已經(jīng)不再符合數(shù)字化轉(zhuǎn)型的要求,內(nèi)容管理系統(tǒng)越來越多地和電子商務(wù)或其他后臺業(yè)務(wù)系統(tǒng)進行數(shù)據(jù)整合或互操作。頁面中的活動信息、產(chǎn)品信息要求能夠?qū)崟r地從其他系統(tǒng)獲取,而不是以人工的方式做數(shù)據(jù)搬家,保證了數(shù)據(jù)的實時性和準確性,提升了用戶體驗。
為了應(yīng)對營銷活動宣傳可能產(chǎn)生的暴增流量,新一代內(nèi)容管理系統(tǒng)廣泛采用了內(nèi)存數(shù)據(jù)庫、消息隊列和微服務(wù)等分布式技術(shù)架構(gòu),實現(xiàn)了高可用、高并發(fā)、動態(tài)擴展的能力,并實現(xiàn)了頁面級訪問隔離、熔斷效果,能在某些活動頁面訪問量增加時進行限流,而不至于影響其他頁面的服務(wù),保障了整體系統(tǒng)安全。
新一代內(nèi)容管理平臺應(yīng)用的主要技術(shù)有如下幾類。
低代碼開發(fā)平臺的英文全稱為Low-Code Development Platform,一個顯著的特點是能有更多的人參與應(yīng)用程序開發(fā),不僅是具有專業(yè)編程能力的程序員,非技術(shù)背景的業(yè)務(wù)人員同樣可以構(gòu)建應(yīng)用;對于大型企業(yè)來講,低代碼開發(fā)平臺還可以降低IT團隊培訓(xùn)、技術(shù)部署的初始成本。
低代碼開發(fā)平臺是無須編碼或通過少量代碼就可以快速生成應(yīng)用程序的開發(fā)平臺。終端用戶不再通過傳統(tǒng)的代碼編寫,而是使用體驗良好的可視化工具開發(fā)自己的應(yīng)用程序、構(gòu)建業(yè)務(wù)流程。完成業(yè)務(wù)邏輯、功能構(gòu)建后,即可一鍵交付應(yīng)用并進行更新發(fā)布。低代碼平臺不僅降低了開發(fā)人員開發(fā)技術(shù)的門檻,可以讓業(yè)務(wù)人員在經(jīng)過簡單的培訓(xùn)后可以進行相關(guān)的開發(fā),還極大地提升了從業(yè)務(wù)需求到開發(fā)部署的效率。
微服務(wù)技術(shù)是一種架構(gòu)概念,核心思想在于通過將業(yè)務(wù)功能和需求分解到各個不同的服務(wù)中進行管理,實現(xiàn)對業(yè)務(wù)整體解耦。圍繞業(yè)務(wù)模式創(chuàng)建應(yīng)用服務(wù),應(yīng)用服務(wù)可獨立地進行開發(fā)、迭代、部署,使項目的架構(gòu)更加清晰明確,且可以實現(xiàn)高可用、高并發(fā)的服務(wù)能力。
微服務(wù)技術(shù)的優(yōu)點就是單個服務(wù)對應(yīng)單個業(yè)務(wù)功能,方便理解、開發(fā)、維護;每個服務(wù)都可以獨立部署,彼此之間不會相互干擾,可以根據(jù)每個服務(wù)的請求量部署滿足需求的服務(wù)能力規(guī)模。
把原來模塊之間直接進行數(shù)據(jù)庫訪問的方式調(diào)整為微服務(wù)訪問,對數(shù)據(jù)庫、服務(wù)、架構(gòu)、業(yè)務(wù)進行重新設(shè)計及拆分,實施難度較大,對技術(shù)能力要求較高。但是如果不做拆分解耦,整個系統(tǒng)成為一個巨石應(yīng)用,系統(tǒng)的擴展性很差,不適合提供對外服務(wù),或者各種服務(wù)之間彼此干擾,很難進行分布式開發(fā)及支持高可用高并發(fā)的部署。
微服務(wù)技術(shù)一般通關(guān)微服務(wù)網(wǎng)關(guān)對外提供服務(wù),微服務(wù)網(wǎng)關(guān)具有身份驗證、鑒權(quán)、限流、降級等功能,可以確保整體個系統(tǒng)安全平穩(wěn)運行。
除了微服務(wù)技術(shù),實現(xiàn)系統(tǒng)的高可用高并發(fā)還需要多種技術(shù)和中間件產(chǎn)品的支持,如分布式數(shù)據(jù)庫、多級緩存、消息隊列、云容器等。
基于相關(guān)研究成果,結(jié)合低代碼設(shè)計理念和微服務(wù)架構(gòu),本文提出了基于微服務(wù)架構(gòu)的內(nèi)容管理系統(tǒng)平臺。具有而言,內(nèi)容管理平臺以低代碼為設(shè)計理念,融入多種Web前端設(shè)計技術(shù)和后端API微服務(wù)技術(shù),實現(xiàn)內(nèi)容管理的簡單化、可配置。系統(tǒng)的架構(gòu)示意圖如圖1所示,從上到下分為用戶終端層、前端服務(wù)層、頁面組件層、能力組件層和基礎(chǔ)設(shè)施層。
該內(nèi)容管理平臺可以支持來自各種終端的用戶的訪問和使用,常見的終端類型包括APP、微信等小程序,以及H5頁面、PC瀏覽器等。
前端服務(wù)層主要分為頁面管理和模板管理兩部分工作。
4.2.1 頁面管理
前端服務(wù)層通過“拖拉拽”的方式選擇展現(xiàn)組件層提供的各種組件,配置形成各種頁面,可以設(shè)置頁面標題等各種屬性信息。也可以通過選擇模板的方式新建頁面,然后進行素材配置。生成的頁面URL可以直接對外訪問。
4.2.2 模板管理
為了滿足不同人群配置營銷活動的要求,初級運營人員在配置頁面環(huán)節(jié)根據(jù)不同活動類型、不同營銷主題、不同宣傳渠道等因素,只需選擇預(yù)設(shè)頁面模板進行頁面配置,過程更方便。系統(tǒng)內(nèi)部預(yù)制20余種格式優(yōu)美、風(fēng)格各異的頁面模板以供選擇,也可以根據(jù)需要把新配置頁面保存為模板,并對現(xiàn)有模板進行修改及刪除管理。
頁面組件層包括通用組件、業(yè)務(wù)組件、功能組件等。
4.3.1 通用組件
通用組件是和具體業(yè)務(wù)無關(guān),可以應(yīng)用于任何場景的組件,包括:
(1)輪播組件。多幅圖片輪流播放,可以配置輪播圖片的數(shù)量、對應(yīng)的頁面鏈接、輪流的時間間隔、組件的標題文字等信息。
(2)圖片組件。多個圖片組成2宮格、3宮格、4宮格等,可配置圖片的數(shù)量、對應(yīng)的頁面鏈接、組件的標題文字等信息。
圖1 基于低代碼平臺的內(nèi)容管理系統(tǒng)架構(gòu)示意圖
(3)樓層導(dǎo)航組件??梢詫崿F(xiàn)在頁面的多個樓層之間進行跳轉(zhuǎn)導(dǎo)航,可以設(shè)定導(dǎo)航選項的數(shù)量、導(dǎo)航選項的名稱、導(dǎo)航的位置等。
(4)圖片熱區(qū)組件??梢詫崿F(xiàn)在這個大圖的不同部分點擊后鏈接到不同的目標頁面,可以設(shè)置組件標題、組件圖片、熱區(qū)位置以及對應(yīng)的目標鏈接等。
(5)列表切換組件??梢詫崿F(xiàn)在一塊頁面區(qū)域定義多個Tab頁面列表,增加頁面的內(nèi)容,可以配置的參數(shù)有Tab頁面的數(shù)量、標題,營銷的類型、顯示的時間,以及每個列表中的數(shù)據(jù)數(shù)量,列表的具體數(shù)據(jù)信息支持文件上傳。
4.3.2 業(yè)務(wù)組件
(1)餐飲券列表。餐飲券列表組件可以設(shè)置組件標題、展示優(yōu)惠券的條數(shù)等配置信息,組件對接餐飲優(yōu)惠券銷售系統(tǒng),每個優(yōu)惠券的頭圖、對應(yīng)銷售鏈接、價格、銷量等信息都是從優(yōu)惠券銷售系統(tǒng)自動獲得。在列表中優(yōu)惠券庫存售罄的情況下,會有新的優(yōu)惠券自動補位。
(2)商城商品列表。商品列表可以設(shè)置組件標題、商品展示的形式(列表、4宮格、9宮格等)、展示的商品數(shù)量等,該組件直接對接網(wǎng)上商城系統(tǒng),每個商品的圖片、對應(yīng)的銷售鏈接、價格、銷量、庫存等信息自動從網(wǎng)上商城系統(tǒng)獲得。在商品售罄或者下架的情況下,會有新的商品自動補位。
4.3.3 功能組件
(1)分城市組件。分城市營銷頁的搭建是指各城市運營人員在現(xiàn)有的全國通用頁面上,做一些本地化特色的部分修改,讓營銷活動更接地氣。分城市營銷頁的展示,是頁面自動根據(jù)LBS定位城市匹配到該城市頁面數(shù)據(jù)展示,否則顯示全國通用頁面,讓頁面掛網(wǎng)顯示更加便捷、智能。
(2)定時組件。定時展示功能解決運營在同個活動需分散配置多個頁面、逐個時間段掛網(wǎng)的痛點,實現(xiàn)同個活動營銷頁在連續(xù)幾個時間段顯示不同頁面效果,使活動在各個階段的切換更加順暢、友好。
(3)審核組件。營銷頁面的新建、變更、刪除等操作都要經(jīng)過審核通過才能發(fā)布生效,頁面審核人員通過頁面預(yù)覽功能掌握頁面內(nèi)容、組件排版布局、業(yè)務(wù)數(shù)據(jù)等信息,最終判斷是否可以發(fā)布,這樣可以對頁面的安全、美觀、體驗進一步把關(guān)。
(4)埋點組件。頁面只有設(shè)置埋點才能被客戶端框架采集,利用大數(shù)據(jù)技術(shù)對采集數(shù)據(jù)進行深度分析,使得采集數(shù)據(jù)更有價值。CMS技術(shù)框架是無須事先預(yù)制即可自動設(shè)置埋點ID,規(guī)則為:頁面ID+組件ID,這樣可以大大減少埋點數(shù)據(jù)管理及開發(fā)工作量。
(5)表單組件。運營人員選擇文本框、單選框、復(fù)選框、下拉框,以及多行文本框、聯(lián)動下拉框等多種表單組件,用過“拖拉拽”的方式生成收集信息的表單。該組件主要用于調(diào)研、信息收集等功能,為內(nèi)容管理系統(tǒng)提供和終端用戶的交互能力。
4.4.1 緩存
為了提升內(nèi)容管理系統(tǒng)各個頁面的訪問速度,系統(tǒng)設(shè)置了多種緩存:首先組成每個頁面的頁面信息、各種組件屬性,全納入內(nèi)存數(shù)據(jù)庫進行管理,這樣極大地縮短了每個頁面的生成時間。此外,內(nèi)容管理系統(tǒng)的頁面以查詢?yōu)橹鳎瑑?nèi)容更新的頻率很低,系統(tǒng)特別配套采用內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)提升頁面的處理性能。
4.4.2 限流
為了防止某些內(nèi)容頁面遭遇規(guī)劃外的大規(guī)模流量負載,在建立頁面時,可以度量配置該組頁面對后臺的請求數(shù)量,在達到并超越闕值時,系統(tǒng)具有自動限流能力,防止流量沖垮整個系統(tǒng)。
4.4.3 安全
為了確保數(shù)據(jù)和信息安全,系統(tǒng)中增加了多重安全保證手段,包括對Owasp Top10的常見安全問題(如SQL注入、跨站腳本等)常見安全威脅的防御措施。
4.4.4 隔離
如果逾期的范圍和數(shù)量比較大,可以針對每個內(nèi)容主題,設(shè)置、配置專屬的Web和后臺服務(wù)器,這樣既可以確保當(dāng)前內(nèi)容主題的活動得到保障,又不影響群體內(nèi)容主題和其他內(nèi)容隔離。
4.4.5 搜索
可以提供對整個內(nèi)容管理系統(tǒng)全站進行標題、時間、主題等關(guān)鍵詞檢索以及全文搜索功能。
通過對低代碼級微服務(wù)級相關(guān)技術(shù)的運用,構(gòu)建的內(nèi)容管理系統(tǒng)實現(xiàn)了業(yè)務(wù)人員按需構(gòu)建營銷頁面的能力,用戶使用上基本以“拖拉拽”為主,在提升頁面展示渲染能力的同時,極大地減輕了用戶的學(xué)習(xí)負擔(dān)。該系統(tǒng)從正式投產(chǎn)的半年內(nèi)已投產(chǎn)頁面1214個,極大地縮短了營銷頁面的投產(chǎn)周期,并降低了成本。該系統(tǒng)還可以根據(jù)訪問效果的預(yù)測靈活配置系統(tǒng)資源,保障系統(tǒng)平穩(wěn)運行,實現(xiàn)建設(shè)目標。