CN114268622A - 分布式场景下的低延迟高并发多平台稿件发布方法 - Google Patents
分布式场景下的低延迟高并发多平台稿件发布方法 Download PDFInfo
- Publication number
- CN114268622A CN114268622A CN202111587523.7A CN202111587523A CN114268622A CN 114268622 A CN114268622 A CN 114268622A CN 202111587523 A CN202111587523 A CN 202111587523A CN 114268622 A CN114268622 A CN 114268622A
- Authority
- CN
- China
- Prior art keywords
- manuscript
- message
- platform
- manuscripts
- issuing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000008569 process Effects 0.000 claims abstract description 11
- 238000007726 management method Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 9
- 238000004519 manufacturing process Methods 0.000 claims description 8
- 230000002085 persistent effect Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 12
- 238000003860 storage Methods 0.000 abstract description 4
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明属于互联网稿件发布领域,涉及分布式场景下的低延迟高并发多平台稿件发布方法;具体包括管理后台系统发布稿件发布mq消息和发布系统接收mq消息。本发明基于微服务架构,基于主流技术实现,涉及系统较多,业务流程复杂;多平台多系统:稿件发布涉及平台系统较多,主要包括有分享页、pc页面、南方号平台、大数据平台、记者采编系统,稿件状态可实现多平台实时同步;去本地化存储:稿件发布后,稿件、图片、视频手机分享页、pc页均上传OSS服务器,所有图片、分享页等没有写入本地服务器。
Description
技术领域
本发明属于互联网稿件发布领域,涉及分布式场景下的低延迟高并发多平台稿件发布方法。
背景技术
随着互联网技术的发展,各类稿件的多平台、多渠道发布宣传已成为现代网络营销的重要一环。互联网稿件发布处理,业界的实现方式系统耦合度普遍过高,部分系统仍属于单体式应用,各个系统的通信采用HTTP接口调用方式居多,后期扩展性、灵活性不够,且无法满足承受高并发场景。本方案主要针对目前稿件发布领域,实现在分布式高并发场景下,实现低延迟多平台的稿件发布方法,本方法结合具体的业务,实现集成多个MQ,进一步提升了系统灵活性,系统耦合度低,扩展性良好,可以满足分布式场景下互联网稿件快速发布、撤回。本方法可应用在媒体行业稿件发布场景,实现稿件多端发布。
发明内容
本发明针对上述的问题,提供了一种分布式场景下的低延迟高并发多平台稿件发布方法。
为了达到上述目的,本发明采用的技术方案为,
一种分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,具体包括以下步骤:
A、管理后台系统发布稿件发布mq消息;
B、发布系统接收mq消息。
作为优选,步骤A中的管理后台系统发布稿件发布mq消息,
则是由系统组装稿件信息,作为生产端投送消息至消息服务器,消息服务器会将生产者发送过来的所有消息追加到只当目录并持久化存储。
作为优选,其中消息生产投递、消息消费过程是发布和订阅模型,其中Topic是mq队列对消息的一级归类,消息生产者将稿件json信息发送到Topic中,而消息消费者则通过订阅该Topic来消费消息。
作为优选,系统组装稿件json信息为稿件Id+首发频道+稿件类型,示例如下:
{"articleId":5007846,"columnId":38,"type":0}
作为优选,其管理后台系统的发布模式有稿件直接发布和稿件定时发布两种。
作为优选,
稿件直接发布:组装稿件json信息,投递到消息服务器;
稿件定时发布:系统定时扫描近30分钟内加入的定时发布队列的稿件,如果已到达设置的发布时间,则程序执行组装稿件json信息,投递到消息服务器;
其中系统定时的时间为60秒。
作为优选,步骤B中的发布系统接收mq消息,
则是在发布服务启动时,作为消息消费者,程序会自动加载mq队列相关配置,消费订阅发布服务作为消费端,即订阅者,消费端采用集群模式消息,负责从Topic主动拉取消息并消费消息,开始处理执行以下业务:
B1、执行稿件发布;
B2、多平台发布;
B3、相关业务;
B4、稿件撤稿。
作为优选,其mq队列相关配置为mq服务器地址,groupId、topic。
与现有技术相比,本发明的优点和积极效果在于,
1、本发明基于微服务架构,基于主流技术实现,涉及系统较多,业务流程复杂。
2、本发明多平台多系统:稿件发布涉及平台系统较多,主要包括有分享页、pc页面、南方号平台、大数据平台、记者采编系统,稿件状态可实现多平台实时同步。
3、去本地化存储:稿件发布后,稿件、图片、视频手机分享页、pc页均上传OSS服务器,所有图片、分享页等没有写入本地服务器
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为实施例1中稿件发布流程图;
图2为实施例1中稿件撤稿流程图。
图3为本法整个系统必要的模块组成。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和实施例对本发明做进一步说明。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开说明书的具体实施例的限制。
实施例1,本发明提供了一种分布式场景下的低延迟高并发多平台稿件发布方法,主要包括稿件管理模块、稿件发布模块,消息组装模块,消息消费模块、稿件撤回模块。
稿件管理模块:后台管理系统提供稿件发布、撤回的入口,供内部运营人员使用;
稿件发布模块:执行发布流程,生成移动端分享页、PC详情页,并上传至OSS服务器,供用户访问;
消息组装模块:根据各个接入系统的业务需要,组装好稿件数据,供消息生产端投递MQ消息;
消息消费模块:消费端收取到生产端投递的MQ消息,执行各个系统的业务逻辑,消费MQ消息;
稿件撤回模块:对于已发布的稿件,内部运营人员可执行撤回操作,执行撤回后,稿件在用户端将不可见;
具体实现过程如下:
S1管理后台系统发布稿件发布mq消息
管理后台触发稿件发布,按照运营需要,平台提供稿件发布直接发布、定时发布两种模式,由系统组装稿件信息,作为生产端投送消息至消息服务器,消息服务器会将生产者发送过来的所有消息追加到只当目录并持久化存储。消息生产(投递)、消息消费过程是发布和订阅模型,其中Topic是mq队列对消息的一级归类,消息生产者将稿件json信息发送到Topic中,而消息消费者则通过订阅该Topic来消费消息。
稿件直接发布:组装稿件json信息,投递到消息服务器;
稿件定时发布:系统定时(每隔一分钟)扫描近30分钟内加入的定时发布队列的稿件,如果已到达设置的发布时间,则程序执行组装稿件json信息,投递到消息服务器;
系统组装稿件json信息:稿件Id+首发频道+稿件类型,示例如下:
{"articleId":5007846,"columnId":38,"type":0}
S2发布系统接收mq消息
发布服务启动时,作为消息消费者,程序会自动加载mq队列相关配置,如mq服务器地址,groupId、topic等信息,消费订阅发布服务作为消费端,即订阅者,消费端采用集群模式消息,负责从Topic主动拉取消息并消费消息,开始处理执行以下业务。
S2.1执行稿件发布,主要包括以下流程:
①根据稿件Id读取稿件信息,使用Hanlp技术提取SEO关键词,长尾词等操作,有利于平台稿件被各大搜索引擎检索、收录。
②使用HttpClient技术调用媒体资源(图片)发布接口(由内部媒体处理服务提供SDK)将稿件中的标题图、内文图、视频封面图等进行发布处理,发布成功后图片才对网民可见,同时替换内文图片地址为发布后的图片地址。
③稿件相关图片发布完毕后,稿件已发布成功,同时稿件状态改变更为已发布状态。基于稿件分享页模板,使用freeMarker技术,生成稿件分享页内容及PC页内容,借助云服务商对象存存储服务(OSS)能力及对外开放的SDK,将稿件内容转为字节流后上传到OSS服务器,实现去本地化存储。
S2.2多平台发布
根据业务线划分,发布服务根据业务线不同,本发明多平台稿件发布主要是基于mq消息队列以及redis缓存技术实现,mq队列主要往不同的Topic投递mq消息,各个系统作为订阅消费消息,各个系统消费者拉取到消息后,再进行各自业务处理;redis缓存技术主要使用简单string、list数据结构。与之交互系统(消费端)有如下:
S2.3其它(相关业务)
组装稿件缓存:稿件发布系统发布完成稿件后,组装文章数据(稿件内容、图片、视频等)推送redis缓存服务器,程序主动组装缓存,有效避免缓存击穿问题。
文字转语音任务:稿件发布成功后,将当前稿件id推送redis缓存队列,程序另外一个线程每个10秒扫描一次文字转语音队列,遵循FIFO原则,按照顺序提交稿件文字转语音任务(腾讯云服务商提供ai能力),调用即提升了稿件发布效率,也实现了稿件内容转语音的目标。
同步稿件发布状态至其它业务系统:使用HttpClient技术,使用POST请求的方式将当前稿件已发布状态、及稿件的终稿内容同步至内部联动的采编系统,方便在内部采编系统也能实时查看稿件发布后的内容。
主要发布流程如图1所示。
S2.4稿件撤稿(如图2所示)
撤稿由后台系统触发,撤稿是指将已经发布的稿件撤回,平台支持单篇稿件撤稿,也支持批量撤稿,撤稿完成后稿件相关页面在外网不可见。
单篇稿件撤稿:由管理运营后台发起,对单篇稿件执行撤稿;
批量撤稿:用于紧急情况下实现短时间撤稿,提供上传excel文件方式实现批量撤稿,处理过程与单篇稿件一致;
撤稿涉及主要技术及处理流程如下:
更改本地数据库,将稿件状态改为未发布状态,同时通过OSS服务提供的SDK,使用定制404页面替换稿件分享页内容,以达到网民用户无法访问稿件分享页的目的,
通过redis缓存技术,清除发稿时组装的redis缓存数据,同时重新组装稿件信息推送至缓存服务器;
刷新稿件详情CDN:考虑到稿件详情信息存在CDN缓存,借助阿里云服务商提供的SDK,调用其刷新稿件详情CDN,前端用户已无法访问此稿件,有效提升撤稿及时性;
发布mq通知:结合发稿流程,撤稿后发布系统同步需要将稿件状态通过mq队列技术同步至各个系统。此时,发布系统作为消息生产者,各个消费组的应用,接收到撤稿消息后,再做消费处理,从而实现在APP客户端频道列表页、手机站列表页、PC站列表页等平台撤下稿件。
撤稿失败通知预警:平台考虑到系统安全性,针对撤稿失败的现象,通过短信发送到管理员手机,进行紧急技术补偿处理。
本发明基于Apache RocketMQ构建的低延迟、高并发分布式消息中间件,为分布式场景下应用系统提供异步、解耦、削峰填谷等能力,参考业界通用做法,在以下几方面与我们对比情况如下:
以上是本方法实现的功能,基于本发明,稿件发布流程后期还可以接入更多的平台端,如需要将稿件发布到一个新增的平台,只需要对应增加一个mq消费组,在稿件发布时,消费端即可接收消费稿件数据,实现将稿件无感知同步到对应平台,且无需投入额外的开发工作,只需接入端实现各自的业务逻辑即可,可插拔式的设计使得系统扩展性良好,易于维护,不存在性能瓶颈。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例应用于其它领域,但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (8)
1.一种分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,具体包括以下步骤:
A、管理后台系统发布稿件发布mq消息;
B、发布系统接收mq消息。
2.根据权利要求1所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,步骤A中的管理后台系统发布稿件发布mq消息,
则是由系统组装稿件信息,作为生产端投送消息至消息服务器,消息服务器会将生产者发送过来的所有消息追加到只当目录并持久化存储。
3.根据权利要求2所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,其中消息生产投递、消息消费过程是发布和订阅模型,其中Topic是mq队列对消息的一级归类,消息生产者将稿件json信息发送到Topic中,而消息消费者则通过订阅该Topic来消费消息。
4.根据权利要求3所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,系统组装稿件json信息为稿件Id+首发频道+稿件类型,示例如下:
{"articleId":5007846,"columnId":38,"type":0}
5.根据权利要求4所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,其管理后台系统的发布模式有稿件直接发布和稿件定时发布两种。
6.根据权利要求5所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,
稿件直接发布:组装稿件json信息,投递到消息服务器;
稿件定时发布:系统定时扫描近30分钟内加入的定时发布队列的稿件,如果已到达设置的发布时间,则程序执行组装稿件json信息,投递到消息服务器;
其中系统定时的时间为60秒。
7.根据权利要求6所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,步骤B中的发布系统接收mq消息,
则是在发布服务启动时,作为消息消费者,程序会自动加载mq队列相关配置,消费订阅发布服务作为消费端,即订阅者,消费端采用集群模式消息,负责从Topic主动拉取消息并消费消息,开始处理执行以下业务:
B1、执行稿件发布;
B2、多平台发布;
B3、相关业务;
B4、稿件撤稿。
8.根据权利要求7所述的分布式场景下的低延迟高并发多平台稿件发布方法,其特征在于,其mq队列相关配置为mq服务器地址,groupId、topic。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111587523.7A CN114268622A (zh) | 2021-12-23 | 2021-12-23 | 分布式场景下的低延迟高并发多平台稿件发布方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111587523.7A CN114268622A (zh) | 2021-12-23 | 2021-12-23 | 分布式场景下的低延迟高并发多平台稿件发布方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114268622A true CN114268622A (zh) | 2022-04-01 |
Family
ID=80829011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111587523.7A Pending CN114268622A (zh) | 2021-12-23 | 2021-12-23 | 分布式场景下的低延迟高并发多平台稿件发布方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114268622A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278561A (zh) * | 2022-06-01 | 2022-11-01 | 浪潮软件股份有限公司 | 一种应用于政务领域的多通道短信服务优化方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770484A (zh) * | 2008-12-31 | 2010-07-07 | 北大方正集团有限公司 | 一种网站更新实时发布的方法及系统 |
CN102196157A (zh) * | 2010-03-02 | 2011-09-21 | 新奥特(北京)视频技术有限公司 | 一种电视台节目的发布系统 |
US20120191790A1 (en) * | 2011-01-24 | 2012-07-26 | appMobi, Inc. | Web-Based Push Messaging Methods and Systems |
CN106953901A (zh) * | 2017-03-10 | 2017-07-14 | 重庆邮电大学 | 一种提高消息传递性能的集群通信系统及其方法 |
CN111786875A (zh) * | 2020-06-10 | 2020-10-16 | 武汉遂意语联网络科技有限公司 | 基于分布式架构的数据处理方法及装置 |
CN112256954A (zh) * | 2020-09-08 | 2021-01-22 | 国网宁夏电力有限公司经济技术研究院 | 一种消息推送的处理方法及相关系统 |
-
2021
- 2021-12-23 CN CN202111587523.7A patent/CN114268622A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770484A (zh) * | 2008-12-31 | 2010-07-07 | 北大方正集团有限公司 | 一种网站更新实时发布的方法及系统 |
CN102196157A (zh) * | 2010-03-02 | 2011-09-21 | 新奥特(北京)视频技术有限公司 | 一种电视台节目的发布系统 |
US20120191790A1 (en) * | 2011-01-24 | 2012-07-26 | appMobi, Inc. | Web-Based Push Messaging Methods and Systems |
CN106953901A (zh) * | 2017-03-10 | 2017-07-14 | 重庆邮电大学 | 一种提高消息传递性能的集群通信系统及其方法 |
CN111786875A (zh) * | 2020-06-10 | 2020-10-16 | 武汉遂意语联网络科技有限公司 | 基于分布式架构的数据处理方法及装置 |
CN112256954A (zh) * | 2020-09-08 | 2021-01-22 | 国网宁夏电力有限公司经济技术研究院 | 一种消息推送的处理方法及相关系统 |
Non-Patent Citations (1)
Title |
---|
余檬;张韬;陆趣;张力;杨君蔚;: "SMG融媒体内容生产监控平台的搭建", 现代电视技术, no. 11, pages 1 - 3 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278561A (zh) * | 2022-06-01 | 2022-11-01 | 浪潮软件股份有限公司 | 一种应用于政务领域的多通道短信服务优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140165119A1 (en) | Offline download method, multimedia file download method and system thereof | |
CN112256954A (zh) | 一种消息推送的处理方法及相关系统 | |
CN103108008A (zh) | 一种下载文件的方法及文件下载系统 | |
CN106919654A (zh) | 一种基于Nginx的高可用MySQL数据库的实现方法 | |
CN103188283A (zh) | 文件上传下载的方法、服务器及系统 | |
CN109462640B (zh) | 一种元数据同步方法、数据端、交互系统及介质 | |
CN112579148B (zh) | 基于业务代理的业务消息处理方法、装置及电子设备 | |
CN111478781B (zh) | 一种消息广播的方法和装置 | |
CN110704400A (zh) | 实时数据同步方法以及装置、服务器 | |
CN103491176A (zh) | 微博自动发布方法及系统 | |
CN114268622A (zh) | 分布式场景下的低延迟高并发多平台稿件发布方法 | |
CN103020136A (zh) | 地理信息实时互动系统及方法 | |
CN100499786C (zh) | 提高电子节目单显示速度的装置和方法 | |
CN105208004A (zh) | 一种基于obd设备的数据入库方法 | |
CN102035852A (zh) | 实现多种媒体格式流输出的装置和方法 | |
CN102802041A (zh) | 支持多个实时动态数据源的智能流媒体服务器的实现方法 | |
CN115589489B (zh) | 视频转码方法、装置、设备、存储介质及视频点播系统 | |
CN101197691A (zh) | 实现网络广告的方法、系统、登录服务器和客户端 | |
CN101420667B (zh) | 一种短信网关处理等待回执消息的方法 | |
CN115982091A (zh) | 基于rdma引擎的数据处理方法与系统、介质、设备 | |
CN113067890B (zh) | 一种适用于智能座舱的动态注册服务方法及智能座舱 | |
CN103731478A (zh) | 一种基于用户访问时间的内容发布方法及系统 | |
WO2017167101A1 (zh) | 彩信附件管理方法、装置、通信系统及计算机存储介质 | |
CN110544475B (zh) | 一种多语音助手的实现方法 | |
CN102546457B (zh) | 文字消息处理方法以及文字消息处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 510000 room 306, 3 / F, news center, 289 Guangzhou Avenue central, Yuexiu District, Guangzhou City, Guangdong Province Applicant after: Guangdong Southern Intelligent Media Technology Co.,Ltd. Address before: 510000 room 306, 3 / F, news center, 289 Guangzhou Avenue central, Yuexiu District, Guangzhou City, Guangdong Province Applicant before: Guangdong Southern New Media Technology Co.,Ltd. Country or region before: China |