基于低代码开发平台的内容管理系统设计

2022-10-18 09:45马欢符为伟李皇锁
项目管理技术 2022年10期
关键词:组件页面模板

马欢 符为伟 李皇锁

(交通银行信用卡中心,上海 200000)

0 引言

内容管理系统(Content Management System,CMS)是一种位于Web前端(Web服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。内容的创作人员、编辑人员、发布人员使用内容管理系统提交、修改、审批、发布内容。这里指的“内容”包括文件、表格、图片、数据库中的数据甚至视频等发布于互联网或内部网站的信息。

内容管理从2000年开始成为一个重要的信息应用领域,能够通过对企业各种类型的数字资产的产生、管理、增值和再利用,改善组织的运行效率和企业的竞争能力。目前,内容管理系统被普遍用于组织门户、知识管理、网络论坛等方方面面。尤其是伴随着电子商务的兴起,内容管理系统得到了更广泛的应用,大量的产品、营销活动信息也在通过内容管理系统进行承载传播。

1 内容管理平台面临的挑战

把内容管理系统应用到营销领域面临着诸多挑战,主要体现在以下几个方面。

1.1 页面美观度不足

传统内容管理系统,为了减轻内容发布人员的负担,都是通过结构化的信息录入,匹配固定格式生成页面,页面千篇一律,美观度不足。虽然有些系统配置了多套模板可供选择,但是往往存在内容管理系统的页面风格和各个业务交易系统不搭配、模板变更技术要求高等问题。

1.2 制作费用高

一些内容管理系统为了解决上面的问题,提供了数字资产管理即把完整内容组件包上传的功能。首先请专业设计师设计好一组H5页面的内容,然后把这一组内容整体上传到内容管理系统中。通过这种方式,很好地解决了页面展现形式单调的问题,设计师可以根据产品和活动的要求大胆设计、渲染展示页面。但这种方式也存在问题,如整个营销内容上线周期长,设计师的费用也非常高。

1.3 系统效率低

相比一般用作内网系统、门户网站、营销系统的内容管理平台,主体关键的要求是能够应对不稳定的大访问量冲击。一些电子商务平台在做促销活动时,其对营销页面的访问量会达到平时的几十倍甚至更高,传统的内容管理系统在性能设计上普遍不足,难以承受剧增的压力。

1.4 互操作性不足

传统的内容管理系统一般包括前、后端子系统,用户通过后端管理台进行内容维护,整个系统和其他系统之间缺少互操作的能力,如营销活动的商品价格信息、库存信息、活动名额信息、达标情况等无法动态展现,只能等用户继续访问到后续的业务系统时才能提示用户,用户体验欠佳。对各个业务系统来说,即使是一些稳定不变的信息,也要以人工的方式提供给内容制作方,很容易造成两边信息不一致导致客户投诉等问题。

2 新一代内容管理平台的发展趋势

目前,内容管理平台的发展呈现出如下几个趋势。

2.1 可组件级页面配置

内容页面的生成不再是通过结构化信息输入生成固定格式的页面,用户可以通过“拖拉拽”的方式,从组件库中选择合适的组件,通过组件的属性设置显示的标题、图标、位置、尺寸、层次等信息,可以即时渲染生成一个新的页面。常用的配置还可以保存为模板重复使用,根据需要设置为系统级模板或用户级模板。

2.2 系统互操作性增强

孤立的单一系统已经不再符合数字化转型的要求,内容管理系统越来越多地和电子商务或其他后台业务系统进行数据整合或互操作。页面中的活动信息、产品信息要求能够实时地从其他系统获取,而不是以人工的方式做数据搬家,保证了数据的实时性和准确性,提升了用户体验。

2.3 高并发高可用支持

为了应对营销活动宣传可能产生的暴增流量,新一代内容管理系统广泛采用了内存数据库、消息队列和微服务等分布式技术架构,实现了高可用、高并发、动态扩展的能力,并实现了页面级访问隔离、熔断效果,能在某些活动页面访问量增加时进行限流,而不至于影响其他页面的服务,保障了整体系统安全。

3 新一代内容管理平台的主要技术

新一代内容管理平台应用的主要技术有如下几类。

3.1 低代码平台

低代码开发平台的英文全称为Low-Code Development Platform,一个显著的特点是能有更多的人参与应用程序开发,不仅是具有专业编程能力的程序员,非技术背景的业务人员同样可以构建应用;对于大型企业来讲,低代码开发平台还可以降低IT团队培训、技术部署的初始成本。

低代码开发平台是无须编码或通过少量代码就可以快速生成应用程序的开发平台。终端用户不再通过传统的代码编写,而是使用体验良好的可视化工具开发自己的应用程序、构建业务流程。完成业务逻辑、功能构建后,即可一键交付应用并进行更新发布。低代码平台不仅降低了开发人员开发技术的门槛,可以让业务人员在经过简单的培训后可以进行相关的开发,还极大地提升了从业务需求到开发部署的效率。

3.2 微服务技术

微服务技术是一种架构概念,核心思想在于通过将业务功能和需求分解到各个不同的服务中进行管理,实现对业务整体解耦。围绕业务模式创建应用服务,应用服务可独立地进行开发、迭代、部署,使项目的架构更加清晰明确,且可以实现高可用、高并发的服务能力。

微服务技术的优点就是单个服务对应单个业务功能,方便理解、开发、维护;每个服务都可以独立部署,彼此之间不会相互干扰,可以根据每个服务的请求量部署满足需求的服务能力规模。

把原来模块之间直接进行数据库访问的方式调整为微服务访问,对数据库、服务、架构、业务进行重新设计及拆分,实施难度较大,对技术能力要求较高。但是如果不做拆分解耦,整个系统成为一个巨石应用,系统的扩展性很差,不适合提供对外服务,或者各种服务之间彼此干扰,很难进行分布式开发及支持高可用高并发的部署。

微服务技术一般通关微服务网关对外提供服务,微服务网关具有身份验证、鉴权、限流、降级等功能,可以确保整体个系统安全平稳运行。

除了微服务技术,实现系统的高可用高并发还需要多种技术和中间件产品的支持,如分布式数据库、多级缓存、消息队列、云容器等。

4 基于低代码平台的内容管理系统架构

基于相关研究成果,结合低代码设计理念和微服务架构,本文提出了基于微服务架构的内容管理系统平台。具有而言,内容管理平台以低代码为设计理念,融入多种Web前端设计技术和后端API微服务技术,实现内容管理的简单化、可配置。系统的架构示意图如图1所示,从上到下分为用户终端层、前端服务层、页面组件层、能力组件层和基础设施层。

4.1 用户终端层

该内容管理平台可以支持来自各种终端的用户的访问和使用,常见的终端类型包括APP、微信等小程序,以及H5页面、PC浏览器等。

4.2 前端服务层

前端服务层主要分为页面管理和模板管理两部分工作。

4.2.1 页面管理

前端服务层通过“拖拉拽”的方式选择展现组件层提供的各种组件,配置形成各种页面,可以设置页面标题等各种属性信息。也可以通过选择模板的方式新建页面,然后进行素材配置。生成的页面URL可以直接对外访问。

4.2.2 模板管理

为了满足不同人群配置营销活动的要求,初级运营人员在配置页面环节根据不同活动类型、不同营销主题、不同宣传渠道等因素,只需选择预设页面模板进行页面配置,过程更方便。系统内部预制20余种格式优美、风格各异的页面模板以供选择,也可以根据需要把新配置页面保存为模板,并对现有模板进行修改及删除管理。

4.3 页面组件层

页面组件层包括通用组件、业务组件、功能组件等。

4.3.1 通用组件

通用组件是和具体业务无关,可以应用于任何场景的组件,包括:

(1)轮播组件。多幅图片轮流播放,可以配置轮播图片的数量、对应的页面链接、轮流的时间间隔、组件的标题文字等信息。

(2)图片组件。多个图片组成2宫格、3宫格、4宫格等,可配置图片的数量、对应的页面链接、组件的标题文字等信息。

图1 基于低代码平台的内容管理系统架构示意图

(3)楼层导航组件。可以实现在页面的多个楼层之间进行跳转导航,可以设定导航选项的数量、导航选项的名称、导航的位置等。

(4)图片热区组件。可以实现在这个大图的不同部分点击后链接到不同的目标页面,可以设置组件标题、组件图片、热区位置以及对应的目标链接等。

(5)列表切换组件。可以实现在一块页面区域定义多个Tab页面列表,增加页面的内容,可以配置的参数有Tab页面的数量、标题,营销的类型、显示的时间,以及每个列表中的数据数量,列表的具体数据信息支持文件上传。

4.3.2 业务组件

(1)餐饮券列表。餐饮券列表组件可以设置组件标题、展示优惠券的条数等配置信息,组件对接餐饮优惠券销售系统,每个优惠券的头图、对应销售链接、价格、销量等信息都是从优惠券销售系统自动获得。在列表中优惠券库存售罄的情况下,会有新的优惠券自动补位。

(2)商城商品列表。商品列表可以设置组件标题、商品展示的形式(列表、4宫格、9宫格等)、展示的商品数量等,该组件直接对接网上商城系统,每个商品的图片、对应的销售链接、价格、销量、库存等信息自动从网上商城系统获得。在商品售罄或者下架的情况下,会有新的商品自动补位。

4.3.3 功能组件

(1)分城市组件。分城市营销页的搭建是指各城市运营人员在现有的全国通用页面上,做一些本地化特色的部分修改,让营销活动更接地气。分城市营销页的展示,是页面自动根据LBS定位城市匹配到该城市页面数据展示,否则显示全国通用页面,让页面挂网显示更加便捷、智能。

(2)定时组件。定时展示功能解决运营在同个活动需分散配置多个页面、逐个时间段挂网的痛点,实现同个活动营销页在连续几个时间段显示不同页面效果,使活动在各个阶段的切换更加顺畅、友好。

(3)审核组件。营销页面的新建、变更、删除等操作都要经过审核通过才能发布生效,页面审核人员通过页面预览功能掌握页面内容、组件排版布局、业务数据等信息,最终判断是否可以发布,这样可以对页面的安全、美观、体验进一步把关。

(4)埋点组件。页面只有设置埋点才能被客户端框架采集,利用大数据技术对采集数据进行深度分析,使得采集数据更有价值。CMS技术框架是无须事先预制即可自动设置埋点ID,规则为:页面ID+组件ID,这样可以大大减少埋点数据管理及开发工作量。

(5)表单组件。运营人员选择文本框、单选框、复选框、下拉框,以及多行文本框、联动下拉框等多种表单组件,用过“拖拉拽”的方式生成收集信息的表单。该组件主要用于调研、信息收集等功能,为内容管理系统提供和终端用户的交互能力。

4.4 能力组件层

4.4.1 缓存

为了提升内容管理系统各个页面的访问速度,系统设置了多种缓存:首先组成每个页面的页面信息、各种组件属性,全纳入内存数据库进行管理,这样极大地缩短了每个页面的生成时间。此外,内容管理系统的页面以查询为主,内容更新的频率很低,系统特别配套采用内容分发网络(CDN)提升页面的处理性能。

4.4.2 限流

为了防止某些内容页面遭遇规划外的大规模流量负载,在建立页面时,可以度量配置该组页面对后台的请求数量,在达到并超越阙值时,系统具有自动限流能力,防止流量冲垮整个系统。

4.4.3 安全

为了确保数据和信息安全,系统中增加了多重安全保证手段,包括对Owasp Top10的常见安全问题(如SQL注入、跨站脚本等)常见安全威胁的防御措施。

4.4.4 隔离

如果逾期的范围和数量比较大,可以针对每个内容主题,设置、配置专属的Web和后台服务器,这样既可以确保当前内容主题的活动得到保障,又不影响群体内容主题和其他内容隔离。

4.4.5 搜索

可以提供对整个内容管理系统全站进行标题、时间、主题等关键词检索以及全文搜索功能。

5 结语

通过对低代码级微服务级相关技术的运用,构建的内容管理系统实现了业务人员按需构建营销页面的能力,用户使用上基本以“拖拉拽”为主,在提升页面展示渲染能力的同时,极大地减轻了用户的学习负担。该系统从正式投产的半年内已投产页面1214个,极大地缩短了营销页面的投产周期,并降低了成本。该系统还可以根据访问效果的预测灵活配置系统资源,保障系统平稳运行,实现建设目标。

猜你喜欢
组件页面模板
高层建筑中铝模板系统组成与应用
刷新生活的页面
铝模板在高层建筑施工中的应用
特高大模板支撑方案的优选研究
Kistler全新的Kitimer2.0系统组件:使安全气囊和安全带测试更加可靠和高效
创建Vue组件npm包实战分析
答案
智能机械臂
舰载雷达TR组件冲击计算方法分析
让Word同时拥有横向页和纵向页