一种消息处理方法、装置、电子设备和存储介质制造方法及图纸

技术编号:36861702 阅读:16 留言:0更新日期:2023-03-15 18:36
本发明专利技术实施例提供了一种消息处理方法、装置、电子设备和可读存储介质,所述方法包括:获取消息队列中下一个待处理的消息,并确定所述消息的消息类型为单层式存储类型或三层式存储类型;若所述消息的消息类型为单层式存储类型,则记录所述消息,并确定当前已记录的消息个数,根据所述消息个数确定是否暂不执行对所述消息的处理操作或执行对所述消息的处理操作;若所述消息的消息类型为三层式存储类型,则执行对所述消息的处理操作。通过采用上述方法,对消息队列的消息按类型分批处理,在不修改原有消息队列模型的基础上,通过分辨消息类型实现了消息优先处理机制。型实现了消息优先处理机制。型实现了消息优先处理机制。

【技术实现步骤摘要】
一种消息处理方法、装置、电子设备和存储介质


[0001]本专利技术涉及计算机
,特别是涉及一种消息处理方法、一种消息处理装置、一种电子设备和一种计算机可读存储介质。

技术介绍

[0002]消息是在两台计算机间传送的数据单位。消息被发送到队列中。消息队列是在消息的传输过程中保存消息的容器。
[0003]后端执行命令即处理各种消息,顺序写时一般分为TLC(Trinary

Level Cell,三层式存储单元)消息和SLC(Single Level Cell,单层式存储单元)消息。其中TLC消息为用户的实际写命令,处理越快则顺序写带宽越快;SLC消息为记录命令执行中生成的参数,需要保证数据正确性,但所处理数据不算入带宽内。每个LUN(Logical UnitNumber,逻辑单元号)都是一个执行单元,一般都有一个独立消息队列即List,用于存放待执行的消息。这个队列一般采用链表形式实现,链表默认采用先进先出原则,即按顺序依次执行。在某些场景下,按顺序依次执行会降低连续写带宽性能。

技术实现思路

[0004]鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种消息处理方法和相应的一种消息处理装置、一种电子设备,以及一种计算机可读存储介质。
[0005]本专利技术实施例公开了一种消息处理方法,所述方法包括:获取消息队列中下一个待处理的消息,并确定所述消息的消息类型为单层式存储类型或三层式存储类型;若所述消息的消息类型为单层式存储类型,则记录所述消息,并确定当前已记录的消息个数,根据所述消息个数确定是否暂不执行对所述消息的处理操作或执行对所述消息的处理操作;若所述消息的消息类型为三层式存储类型,则执行对所述消息的处理操作。
[0006]可选地,所述根据所述消息个数确定是否暂不执行对所述消息的处理操作或执行对所述消息的处理操作,包括:若所述消息个数小于预设消息个数阈值,则确定暂不执行对所述消息的处理操作;若所述消息个数不小于所述预设消息个数阈值,则确定执行对所述消息的处理操作。
[0007]可选地,所述记录所述消息,包括:确定是否存在临时存储列表;其中,所述临时存储列表用于临时存放等待处理的单层式存储类型消息;若不存在所述临时存储列表,则创建所述临时存储列表,并将所述消息的信息记
录至所述临时存储列表中;若存在所述临时存储列表,则将所述消息的信息记录至所述临时存储列表中。
[0008]可选地,所述确定当前已记录的消息个数,包括:统计当前所述临时存储列表中记录的消息总个数。
[0009]可选地,所述统计当前所述临时存储列表中记录的消息总个数,包括:通过计数器进行计数以确定所述临时存储列表中记录的消息总个数。
[0010]可选地,所述若所述消息个数不小于所述预设消息个数阈值,则确定执行对所述消息的处理操作,包括:若所述消息个数不小于所述预设消息个数阈值,则确定所述临时存储列表中记录的各所述消息,并按照记录的先后顺序依次执行对各所述消息的处理操作。
[0011]可选地,所述方法还包括:在执行完成对各所述消息的处理操作之后,将各所述消息的信息从所述临时存储列表中删除。
[0012]可选地,所述若所述消息个数小于预设消息个数阈值,则确定暂不执行对所述消息的处理操作之后,还包括:继续从所述消息队列中获取下一个待处理的消息。
[0013]可选地,所述方法还包括:确定所述消息队列中属于单层式存储类型的消息总个数,以及确定所述消息队列中属于三层式存储类型的消息总个数;根据属于单层式存储类型的消息总个数和属于三层式存储类型的消息总个数之间的数量关系,确定所述预设消息个数阈值。
[0014]可选地,所述根据属于单层式存储类型的消息总个数和属于三层式存储类型的消息总个数之间的数量关系,确定所述预设消息个数阈值,包括:计算属于单层式存储类型的消息总个数与属于三层式存储类型的消息总个数的比值;根据所述比值,确定所述预设消息个数阈值。
[0015]可选地,所述根据所述比值,确定所述预设消息个数阈值,包括:若所述比值大于预设比值,则将预设第一数值确定为所述预设消息个数阈值。
[0016]可选地,所述若所述比值大于预设比值,则将预设第一数值确定为所述预设消息个数阈值,包括:若所述比值大于所述预设比值,且所述消息队列中的消息总个数大于预设队列消息个数阈值,则将所述预设第一数值确定为所述预设消息个数阈值。
[0017]可选地,所述方法还包括:获取基于执行顺序写或顺序读操作生成的待处理的消息,并将待处理的消息存放至所述消息队列中。
[0018]可选地,所述单层式存储类型的消息为系统请求消息;所述三层式存储类型的消息为用户请求消息。
[0019]可选地,所述执行对所述消息的处理操作,包括:确定与所述消息队列对应的LUN逻辑单元;
采用所述LUN逻辑单元执行对所述消息的处理操作。
[0020]可选地,所述消息队列包括读消息队列和写消息队列,所述获取消息队列中下一个待处理的消息,包括:从所述读消息队列中获取下一个待处理的读消息;或,从所述写消息队列中获取下一个待处理的写消息。
[0021]可选地,所述确定所述消息的消息类型为单层式存储类型或三层式存储类型之前,还包括:确定所述消息队列中是否存在单层式存储类型的消息和三层式存储类型的消息。
[0022]本专利技术实施例还公开了一种消息处理装置,所述装置包括:消息获取及消息类型确定模块,用于获取消息队列中下一个待处理的消息,并确定所述消息的消息类型为单层式存储类型或三层式存储类型;消息记录及处理操作执行确定模块,用于若所述消息的消息类型为单层式存储类型,则记录所述消息,并确定当前已记录的消息个数,根据所述消息个数确定是否暂不执行对所述消息的处理操作或执行对所述消息的处理操作;处理操作执行模块,用于若所述消息的消息类型为三层式存储类型,则执行对所述消息的处理操作。
[0023]可选地,所述消息记录及处理操作执行确定模块,包括:处理操作确定暂不执行子模块,用于若所述消息个数小于预设消息个数阈值,则确定暂不执行对所述消息的处理操作;处理操作确定执行子模块,用于若所述消息个数不小于所述预设消息个数阈值,则确定执行对所述消息的处理操作。
[0024]可选地,所述消息记录及处理操作执行确定模块,包括:临时存储列表确定子模块,用于确定是否存在临时存储列表;其中,所述临时存储列表用于临时存放等待处理的单层式存储类型消息;临时存储列表创建及消息记录子模块,用于若不存在所述临时存储列表,则创建所述临时存储列表,并将所述消息的信息记录至所述临时存储列表中;消息记录子模块,用于若存在所述临时存储列表,则将所述消息的信息记录至所述临时存储列表中。
[0025]可选地,所述消息记录及处理操作执行确定模块,包括:消息总个数统计子模块,用于统计当前所述临时存储列表中记录的消息总个数。
[0026]可选地,所述消息总个数统计子模块,包本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种消息处理方法,其特征在于,所述方法包括:获取消息队列中下一个待处理的消息,并确定所述消息的消息类型为单层式存储类型或三层式存储类型;若所述消息的消息类型为单层式存储类型,则记录所述消息,并确定当前已记录的消息个数,根据所述消息个数确定是否暂不执行对所述消息的处理操作或执行对所述消息的处理操作;若所述消息的消息类型为三层式存储类型,则执行对所述消息的处理操作。2.根据权利要求1所述的方法,其特征在于,所述根据所述消息个数确定是否暂不执行对所述消息的处理操作或执行对所述消息的处理操作,包括:若所述消息个数小于预设消息个数阈值,则确定暂不执行对所述消息的处理操作;若所述消息个数不小于所述预设消息个数阈值,则确定执行对所述消息的处理操作。3.根据权利要求2所述的方法,其特征在于,所述记录所述消息,包括:确定是否存在临时存储列表;其中,所述临时存储列表用于临时存放等待处理的单层式存储类型消息;若不存在所述临时存储列表,则创建所述临时存储列表,并将所述消息的信息记录至所述临时存储列表中;若存在所述临时存储列表,则将所述消息的信息记录至所述临时存储列表中。4.根据权利要求3所述的方法,其特征在于,所述确定当前已记录的消息个数,包括:统计当前所述临时存储列表中记录的消息总个数。5.根据权利要求4所述的方法,其特征在于,所述统计当前所述临时存储列表中记录的消息总个数,包括:通过计数器进行计数以确定所述临时存储列表中记录的消息总个数。6.根据权利要求5所述的方法,其特征在于,所述若所述消息个数不小于所述预设消息个数阈值,则确定执行对所述消息的处理操作,包括:若所述消息个数不小于所述预设消息个数阈值,则确定所述临时存储列表中记录的各所述消息,并按照记录的先后顺序依次执行对各所述消息的处理操作。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:在执行完成对各所述消息的处理操作之后,将各所述消息的信息从所述临时存储列表中删除。8.根据权利要求6或7所述的方法,其特征在于,所述若所述消息个数小于预设消息个数阈值,则确定暂不执行对所述消息的处理操作之后,还包括:继续从所述消息队列中获取下一个待处理的消息。9.根据权利要求8所述的方法,其特征在于,所述方法还包括:确定所述消息队列中属于单层式存储类型的消息总个数,以及确定所述消息队列中属于三层式存储类型的消息总个数;根据属于单层式存储类型的消息总个数和属于三层式存储类型的消息总个数之间的数量关系,确定所述预设消息个数阈值。10.根据权利要求9所述的方法,其特征在于,所述根据属于单层式存储类型的消息总个数和属于三层式存储类型的消息总个数之间的数量关系,确定所述预设消息个数阈值,
包括:...

【专利技术属性】
技术研发人员:张海仑赵龙钟戟
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1