技术领域
[0001] 本发明涉及信息传输技术领域,更具体地说,涉及一种内容发布系统。
相关背景技术
[0002] 传统的内容发布系统,通常需要在每台服务器(发布端服务器、接收端服务器)分别安装相应的服务端、客户端组件,配置较为繁琐复杂,且功能多数仅局限于文件传输、列表、创建等文件操作,支持的功能还需要依赖客户端组件的持续更新,且侵入式的客户端组件会为接收端带来安全、稳定性等方面的各种疑虑。
[0003] 因此,本领域技术人员期望获得一种安全、可靠、操作便利的内容发布系统。
具体实施方式
[0012] 如图1所示,本发明一实施例提供一种内容发布系统20,用于向多个接收端301、302、303发布各种内容,诸如信息和图片、视频等文件。
[0013] 该内容发布系统20包括内容管理模块201、接收端配置模块202以及发布模块203。内容管理模块201与待发布内容提供商端的服务器(附图未示出)连接并通信,用于储存并管理待发布内容,从而待发布内容提供商能够经由内容发布系统20向各接收端301、302、
303发布内容。
[0014] 接收端配置模块202与内容管理模块201耦合并还与各接收端301、302、303分别耦合,接收端配置模块202可以来配置各接收端301、302、303。
[0015] 通常,接收端可以是业务服务器(处理各种业务)、信息服务亭(供用户查询各种信息)、采用安卓系统的智能手机、以及采用安卓系统的其他移动设备。接收端配置模块202可以基于待发布内容的类型、人工分类、文件大小或安全性要求等来将已经接入内容发布系统20的各接收端分组或配置为不同类型的接收端,进而使得每一类型的接收端均具有唯一的、特定的工作/运行参数。
[0016] 对于内容发布系统20而言,对不同类型的接收端分别配置不同的工作/运行参数,使得内容发布系统20能够根据待发布内容来快速确定哪些接收端需要或不需要接收该待发布文件。对于接收端而言,采用不同配置,各接收端301、302、303可以按不同的方式来接收、存储所发布文件,也可以按与发布模块203进行发布所采用的发布模式相适应的方式来进行各种操作。
[0017] 相应地,针对待发布内容的各种类型、实时性要求、安全性要求或接收端的数量,发布模块203可以分别采用不同的发布模式,来将待发布内容发布到各接收端301、302、303。发布模式例如包括:定点发布(向特定接收端发布)、批量发布(向不特定的多个接收端发布)、定时发布、分批次发布、对各接收端按优先级次序来分布等。
[0018] 对内容发布系统20进行这种设置,即,接收端配置模块202独立于发布模块203。这种设置不仅能够使得发布行为与参数配置行为互相分离、互不干扰,降低了程序冗余及复杂性,增加了程序代码易读性、扩展性,还可以实现先接收(所发布文件)再配置、边接收边配置这种发布方式。此外,发布行为可能需要加密、压缩等各种附加操作,而参数配置行为通常不需要这类附加操作。
[0019] 优选情况下,内容发布系统20及各接收端301、302、303可以采用Secure Shell协议通信来实现本文所述的内容发布。
[0020] 本领域技术人员掌握,SSH(Secure Shell)是一种通用的、功能强大的、基于软件的网络安全解决方案。计算机每次向网络发送数据时,SSH都会自动对其进行加密。数据到达目的地时,SSH自动对加密数据进行解密。而SSH协议是建立在应用层和传输层基础上的安全协议,它主要由传输层协议、用户认证协议层以及连接协议层组成,共同实现SSH的安全保密机制。
[0021] 传输层协议提供诸如认证、信任和完整性检验等安全措施,此外它还可以提供数据压缩功能。用户认证协议层运行在传输层协议之上,用来实现服务器的跟客户端用户之间的身份认证。连接协议层运行在用户认证层协议之上,其分配多个加密通道至一些逻辑通道上。
[0022] 采用Secure Shell协议通信,技术人员能够高效地实现内容发布系统20与各接收端301、302、303之间的内容传输,且能够满足特定用户的安全性要求。
[0023] 可以理解,将用户唯一标识等信息存放在配置文件中,有可能带来信息安全泄露风险、或因密码过期更改而造成的文件推送失败。因此,优选情况下,各接收端301、302、303均向内容发布系统20提供预授权登陆服务。通过这种预授权登陆服务,内容发布系统20能够快速登陆各接收端301、302、303并向其发布文件,同时有利于保护相关信息的安全。预授权登陆服务也可以经由SSH解决方案来提供。
[0024] 根据本发明另一实施例,类似地,内容发布系统20包括内容管理模块201、接收端配置模块202以及发布模块203;不同的是,内容发布系统20及各接收端301、302、303按照云计算系统来部署,这使得内容发布系统20具有良好的可扩展性,能够与任何数量、任何位置的接收端进行适配。
[0025] 在不采用SSH解决方案的前提下,发布模块203可以对待发布内容进行压缩,在进行发布时,将压缩包发布到各接收端。为安全性考虑,发布模块203还可以对待发布内容进行加密。
[0026] 本发明上述各实施例提供的内容发布系统20,能够根据待发布内容来配置各接收端、以及为发布模块选择适合的发布模式来执行发布,从而,上述内容发布系统高效且具有良好的适应性,可以满足特定用户的实时性、安全性等要求。
[0027] 在内容发布系统20的一种具体实现中,待发布内容为优惠券信息,通过内容管理模块201可以对优惠券信息进行管理。可以理解,不同类型的优惠券在展示时是不一样的,例如,折扣率属性只存在于折扣券,而不存在于抵扣券,秒杀票券的秒杀开始时间在普通的下载优惠券中不存在。不同优惠券新增、编辑时的页面也要根据不同的要素进行动态变化。为了模块化每种类型的优惠券,可以将优惠券的单个属性切割成最小的颗粒度,比如将每个图片、每个视频,每段描述信息均形成为一个模块(ZONE)。模块(ZONE)具有若干属性,比如模块ID(zoneID)、模块名称(zoneName)、模块类型(zoneType)、模块映射(mapping)、模块序列(seq)、模块参数(params)等属性。不同类型的优惠券可以视为各个模块的集合体。在具体实现中,可以将不同类型的优惠券包含的、所有模块存储为不同的XML文档。在优惠券信息维护的时候,先根据优惠券的类型读取对应的XML文档,解析其所有的模块,再按照模块序列的先后顺序将其转义为标准的HTML标签,待运营人员录入相应信息之后进行保存以及后续发布。
[0028] 以一种优惠券的常规发布过程为例,其包括如下各步骤:a、首先为整个发布过程开启事务。
[0029] b、从上下文中读取当前已接入系统的各接收端的信息,根据不同的优惠券类型对接收端进行配置/分组。如秒杀券的图片发布到秒杀Apache服务器,普通票券的图片发布到常规Apache服务器,外部文件则发布到外部Apache服务器。
[0030] c、读取待发布的优惠券(例如秒杀券、普通券),不同类型的优惠券从相应的路径取得其图片、html等信息,复制到内容发布系统20内的临时文件夹,进行打包压缩。为了防止并发冲突,为各文件夹分配唯一标识。
[0031] d、循环各接收端,JAVA运行时调用shell脚本,将压缩包推送到当前接收端的临时文件夹,然后移动到最终文件夹,进行解压缩释放随后删除掉压缩包,终止当前进程并返回特征码0;JAVA运行时读取到返回的特征码为0,则认为本次发布结束,结果正确。随后,将压缩包推送到下一个接收端,本过程持续到所有的接收端都获取到所发布内容时为止。
[0032] e、结束本次发布事务,将发布结果反馈给调用方。
[0033] 上述说明仅针对于本发明的优选实施例,并不在于限制本发明的保护范围。本领域技术人员可作出各种变形设计,而不脱离本发明的思想及附随的权利要求。