CN112416614B 基于消息队列的数据处理方法、系统及服务器 (网宿科技股份有限公司)_第1页
CN112416614B 基于消息队列的数据处理方法、系统及服务器 (网宿科技股份有限公司)_第2页
CN112416614B 基于消息队列的数据处理方法、系统及服务器 (网宿科技股份有限公司)_第3页
CN112416614B 基于消息队列的数据处理方法、系统及服务器 (网宿科技股份有限公司)_第4页
CN112416614B 基于消息队列的数据处理方法、系统及服务器 (网宿科技股份有限公司)_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

器本发明实施例提供一种基于消息队列的数务器获取与目标关键字段对应的最大消息序列采用本发明能够在保证数据一致性的前提下保2解析从消息队列获取的目标消息的目标关键字段和目标消息序列号根据所述最大消息序列号与所述目标消息序列号的大小关系、以及根据所述最大消息序列号与所述目标消息序列号的大小关系、以及若所述最大消息序列号大于所述目标消息序列号,则忽略所述目若所述最大消息序列号小于所述目标消息序列号且所述缓存服务器中不存在所述目若所述最大消息序列号等于所述目标消息序列号,或所从消息队列获取目标批次消息,并查询所述缓存服务器是否存在在缓存服务器中记录所述目标批次消息的最大下标值,以根据若所述目标消息处理中标记位在所述缓存服务器中存3将所述目标消息存放至等待队列,以使所述消费端从所述等待队列若目标批次处理中标记位在所述缓存服务器中存储时间超过第查询已推送成功的消息的最大下标值,根据所述最大下标值息的目标批次消息,以使所述消费端解析所述目标消息的目标关键字段和目标消息序列若接收到所述消费端回复的成功接收响应,或者确定所述缓若在第三预设时长内未接收到所述成功接收响应,且所其中,所述目标批次处理中标记位由所述消费端在接收所述目标批次消息中的各条消息携带有消息序列号,所述各条消息的所述消息序列号用于使所述消费端判断是否消费所述消息序列11.一种基于消息队列的数据处理系统,所述系统包括消息队列和消费端,其特征在述代码集或指令集由所述处理器加载并执行,以实现如权利要求1至8任一项所述的方法,45[0004]本专利申请的发明人通过研究请求端、消息队列以及服务端之间的通信过程发样可能导致同一消息被重复消费以及消费者处理失效消息后引发数据[0011]若所述最大消息序列号小于所述目标消息序列号且所述缓存服务器中不存在所6目标批次消息的最大下标值,以使所述消息队列根据所述最大下标值推送下一批次的消7[0026]若所述目标消息处理中标记位在所述缓存服务器中存储[0036]当所述目标批次消息中的所有消息处理完成时,删除所述目标批次处理中标记8[0052]若所述最大消息序列号小于所述目标消息序列号且所述缓存服务器中不存在所9目标批次消息的最大下标值,以使所述消息队列根据所述最大下标值推送下一批次的消[0064]若所述目标消息处理中标记位在所述缓存服务器中存储[0069]当所述目标批次消息中的所有消息处理完成时,删除所述目标批次处理中标记息是否为失效消息或者重复消息;通过查询缓存服务器中是否存在目标消息处理中标记能够忽略失效消息和重复消息,在保证数据一致性的前提下保证同一条消息只被消费一[0084]图5为本发明实施例提供的一种以消息队列为执行主体的数据处理方法的流程绝对时序的业务场景下,生产端在生成消息时可以向单台全局序列服务器(即一台能够生成有序序列号的网络设备)请求获取一个在时间上绝对有序的全局唯一的消息序列号,并列号(可记作max_seq)。基于该最大消息序列号可以确定消费端是否消费了与目标消息具一昵称请求和第二昵称请求,用于指示消费端将用户昵称依次修改为第一昵称和第二昵[0103]在一个实施例中,消息队列每接收到一条消息(包括生产者生成的新消息以及重围为[0-99]的目标批次消息后,可以在缓存服务器中记录目标批次消息的最大下标值(可息队列可以在消费端拉取消息时向消费端提供当前消息队列中排询到最大下标值时从第1条消息开始向消费端推送消息,或者消息队列无需查询最大下标可以是携带下标范围[0-99]的成功接收响应。当接收到下标范围[0-99]的成功接收响应应或者缓存服务器中存在目标批次处理中标记位PROCESSING:[0-99]时,在缓存服务器中处理中标记位PROCESSING:[100-109]时,可以将缓存服务器中已经记录的PUSH_SUCCESS:[0-99]更新为PUSH_SUCCESS:[0时间间隔(可称作第三预设时长)内未接收到消费端返回的与目标批次消息对应的成功接[0115]在步骤201之后,为了确定消费端即将消费的目标消息是否为失效消息或者重复存在目标消息处理中标记位,可以说明已经有消费者正在处理或已经成功消费了目标消[0118]步骤202,若最大消息序列号小于目标消息序列号且缓存服务器中不存在目标消号(可记作key+seq_receive=true)。目标消息处理中标记位还可以包含处理目标消息的待队列中以等待消费端从等待队列中获取并再次判断是中标记位和第二昵称请求处理中标记位,并且后续消费端可能率先成功消费第二昵称请[0135]基于相同的技术构思,本发明实施例还提供了一种基于消息队列的数据处理系[0138]若所述最大消息序列号小于所述目标消息序列号且所述缓存服务器中不存在所目标批次消息的最大下标值,以使所述消息队列根据所述最大下标值推送下一批次的消[0150]若所述目标消息处理中标记位在所述缓存服务器中存储[0155]当所述目标批次消息中的所有消息处理完成时,删除所述目标批次处理中标记[0161]需要说明的是,上述实施例提供的数据处理系统与数据处理实施例属于同一构存储器732,一个以上存储应用程序742或数据744的存储介质730(例如一个以上海量存储程序可以包括一个以上模块(图示没标出),每个模块可以包括对文本标注设备700中的一以上输入输出接口758,一个以上键盘756,和/或,一个以上操作系统741,例如Windows出来,该实现基于消息队列的数据处理方法的软件产品可以存储在计算机可读存储介质

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论