CN111464628A - 多路复用异步处理系统及方法 - Google Patents

多路复用异步处理系统及方法 Download PDF

Info

Publication number
CN111464628A
CN111464628A CN202010241041.5A CN202010241041A CN111464628A CN 111464628 A CN111464628 A CN 111464628A CN 202010241041 A CN202010241041 A CN 202010241041A CN 111464628 A CN111464628 A CN 111464628A
Authority
CN
China
Prior art keywords
multiplexer
thread
response
data
data request
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.)
Granted
Application number
CN202010241041.5A
Other languages
English (en)
Other versions
CN111464628B (zh
Inventor
武文斌
郑宝城
傅兵
潘洪添
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010241041.5A priority Critical patent/CN111464628B/zh
Publication of CN111464628A publication Critical patent/CN111464628A/zh
Application granted granted Critical
Publication of CN111464628B publication Critical patent/CN111464628B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种多路复用异步处理系统及方法,所述系统包含:应用服务器向分析模块发送数据请求;分析模块分析接收到的数据请求的数据类型,将写数据请求交由生产多路复用器IO线程;生产多路复用器IO线程将写数据请求异步写入分布式消息队列,根据分布式消息队列反馈的第一应答响应和第二应答响应获得应答数据,并反馈至应用服务器;消费多路复用器IO线程于分布式消息队列中拉取相同的写数据请求,根据写数据请求将对应的写数据异步写入多个存储服务器;将存储服务器反馈的应答数据存入分布式消息队列后生成第二应答响应,并反馈至生产多路复用器IO线程;存储服务器根据写数据的执行结果生成应答数据,将应答数据异步反馈至消费多路复用器IO线程。

Description

多路复用异步处理系统及方法
技术领域
本发明涉及数据交互领域,尤指一种多路复用异步处理系统及方法。
背景技术
随着业务量的不断增长,大数据爆发的时代,对于高性能、高并发的处理能力要求不断提升,同时在金融等领域对于存储的高可用和数据的一致性要求也提出了鱼和熊掌要兼得的需求。
在部分读写高并发请求的业务场景下,数据访问量或写入量较高时,对设备的性能要求较高,业务系统容易出现性能不足的问题;在业务系统频繁进行上下文切换过程中因其响应逻辑的局限性,响应失效的情况也时有发生;再者,业界普遍采用的存储服务器主从模式,存在主从数据异步复制,导致应用服务器会读到数据不一致的场景,同时在发生主从切换时也会导致从节点的数据丢失问题。
基于此,业内亟需一种多路复用异步处理系统及方法能够在较低成本的基础基础还上克服上述问题。
发明内容
本发明目的在于提供一种多路复用异步处理系统及方法,通过多路复用和异步ACK确认技术,解决了在读多写少的业务场景下,对同一类数据访问量较高时出现性能不足问题。
为达上述目的,本发明所提供的多路复用异步处理系统,具体包含应用服务器、代理服务器和多个存储服务器;所述应用服务器用于向所述代理服务器发送数据请求;所述代理服务器包含分析模块、生产多路复用器IO线程、多个消费多路复用器IO线程和分布式消息队列;所述分析模块用于分析接收到的数据请求的数据类型,当所述数据请求为写数据请求时,将所述写数据请求交由所述生产多路复用器IO线程;所述生产多路复用器IO线程用于将所述写数据请求异步写入分布式消息队列,并根据所述分布式消息队列反馈的第一应答响应和所述消费多路复用器IO线程反馈的第二应答响应于所述分布式消息队列中获得应答数据,将所述应答数据反馈至应用服务器;所述消费多路复用器IO线程于所述分布式消息队列中拉取相同的所述写数据请求,并根据所述写数据请求将对应的写数据异步写入多个存储服务器;以及,将所述存储服务器反馈的应答数据存入所述分布式消息队列后,生成第二应答响应,将所述第二应答响应异步反馈至所述生产多路复用器IO线程;所述存储服务器用于根据所述消费多路复用器IO线程写入的写数据的执行结果生成应答数据,将所述应答数据异步反馈至所述消费多路复用器IO线程。
在上述多路复用异步处理系统中,优选的,所述分析模块还包含当所述数据请求为读数据请求时,通过内核中断机制调用所述消费多路复用器IO线程处理所述读数据请求。
在上述多路复用异步处理系统中,优选的,所述消费多路复用器IO线程还用于通过一致性哈希算法定位所述读数据请求所对应的存储服务器;通过异步方式将所述读数据请求转发至所述存储服务器;将所述存储服务器反馈的应答数据反馈至所述应用服务器。
在上述多路复用异步处理系统中,优选的,所述分布式消息队列包含关联单元和查询单元;所述请求单元用于根据所述写数据请求建立标识信息,将所述标识信息交由至所述生产多路复用器IO线程和所述消费多路复用器IO线程;以及,将所述写数据请求、所述标识信息和所述应答数据关联后保存;所述查询单元用于根据接收到的标识信息调取对应的所述写数据请求或所述应答数据。
本发明还提供一种多路复用异步处理方法,所述方法包含:接收应用服务器上传的数据请求,并分析所述数据请求的数据类型;当所述数据请求为写数据请求时,将所述写数据请求交由生产多路复用器IO线程;生产多路复用器IO线程将所述写数据请求异步写入分布式消息队列,并接收所述分布式消息队列反馈的第一应答响应;多个消费多路复用器IO线程于所述分布式消息队列中拉取相同的所述写数据请求,并根据所述写数据请求将对应的写数据异步写入多个存储服务器;将所述存储服务器反馈的应答数据存入所述分布式消息队列后,生成第二应答响应;将所述第二应答响应异步反馈至所述生产多路复用器IO线程;生产多路复用器IO线程根据所述第一应答响应和所述第二应答响应于所述分布式消息队列中获得应答数据,将所述应答数据反馈至应用服务器。
在上述多路复用异步处理方法中,优选的,所述方法还包含:当所述数据请求为读数据请求时,通过内核中断机制调用所述消费多路复用器IO线程处理所述读数据请求。
在上述多路复用异步处理方法中,优选的,所述方法还包含:所述消费多路复用器IO线程通过一致性哈希算法定位所述读数据请求所对应的存储服务器;通过异步方式将所述读数据请求转发至所述存储服务器;将所述存储服务器反馈的应答数据反馈至所述应用服务器。
在上述多路复用异步处理方法中,优选的,所述方法还包含:根据所述写数据请求建立标识信息,将所述标识信息交由至所述生产多路复用器IO线程和所述消费多路复用器IO线程;根据接收到的应答数据,将所述写数据请求、所述标识信息和所述应答数据关联后保存;所述消费多路复用器IO线程通过所述标识信息于所述分布式消息队列调取对应的所述写数据请求;所述生产多路复用器IO线程通过所述标识信息于所述分布式消息队列调取对应的所述应答数据。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
本发明的有益技术效果在于:通过代理服务器通过对存储分片的双写机制解决了存储分片的高可用和数据强一致问题,并通过异步通信和多路复用机制,在解决了数据强一致的同时,又提升了服务端的请求负载能力和对应用服务器的响应时效性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例所提供的多路复用异步处理系统的结构示意图;
图2为本发明一实施例所提供的多路复用异步处理系统的应用结构示意图;
图3为本发明一实施例所提供的分布式消息队列的结构示意图;
图4为本发明一实施例所提供的多路复用异步处理方法的流程示意图;
图5为本发明一实施例所提供的多路复用异步处理方法的应用流程示意图;
图6为本发明一实施例所提供的电子设备的结构示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
请参考图1所示,本发明所提供的多路复用异步处理系统,具体包含应用服务器、代理服务器和多个存储服务器;所述应用服务器用于向所述代理服务器发送数据请求;所述代理服务器包含分析模块、生产多路复用器IO线程、多个消费多路复用器IO线程和分布式消息队列;所述分析模块用于分析接收到的数据请求的数据类型,当所述数据请求为写数据请求时,将所述写数据请求交由所述生产多路复用器IO线程;所述生产多路复用器IO线程用于将所述写数据请求异步写入分布式消息队列,并根据所述分布式消息队列反馈的第一应答响应和所述消费多路复用器IO线程反馈的第二应答响应于所述分布式消息队列中获得应答数据,将所述应答数据反馈至应用服务器;所述消费多路复用器IO线程于所述分布式消息队列中拉取相同的所述写数据请求,并根据所述写数据请求将对应的写数据异步写入多个存储服务器;以及,将所述存储服务器反馈的应答数据存入所述分布式消息队列后,生成第二应答响应,将所述第二应答响应异步反馈至所述生产多路复用器IO线程;所述存储服务器用于根据所述消费多路复用器IO线程写入的写数据的执行结果生成应答数据,将所述应答数据异步反馈至所述消费多路复用器IO线程。请参考图2所示,在实际工作中,所述消费多路复用器IO线程数量可根据存储服务器的数量来确认,例如当存储服务器为主从分布的两台存储设备时,所述代理服务器内可嵌入3套多路复用IO处理器和1套分布式消息队列的异步客户端,第1套多路复用IO处理器即生产多路复用器IO线程用来接收并处理客户端高并发下产生的海量请求,请求达到代理服务器后将按区分读写两种请求,写请求则由分布式消息队列异步客户端将请求数据写入分布式消息队列中,读请求则由第2套多路复用IO处理器即消费多路复用器IO线程将请求转发请求至存储节点,第3套多路复用IO处理器即消费多路复用器IO线程用来异步接收其他代理服务器作为分布式消息队列消费者时,对写请求的ACK确认消息;当代理服务器对于写请求的应答ACK累计为3时,将写请求的处理结果反馈给对应的客户端,由此保证了客户端在读取数据时的数据强一致。
在本发明一实施例中,所述分析模块还可包含当所述数据请求为读数据请求时,通过内核中断机制调用所述消费多路复用器IO线程处理所述读数据请求;其后,所述消费多路复用器IO线程则通过一致性哈希算法定位所述读数据请求所对应的存储服务器;通过异步方式将所述读数据请求转发至所述存储服务器;将所述存储服务器反馈的应答数据反馈至所述应用服务器。在该实施例中,当本发明所提供的多路复用异步处理系统判断所述数据请求为读数据时,则可通过消费多路复用器IO线程来处理该请求,当多个存储服务器中均包含目标数据时,可根据实际情况随机选择任意一个节点进行读取,也可进一步考虑读取效率的方式确定目标存储服务器来读取对应的目标数据,本领域相关技术人员可根据实际需要选择设置,本发明在此并不做进一步限制。
请参考图3所示,在本发明一实施例中,所述分布式消息队列包含关联单元和查询单元;所述请求单元用于根据所述写数据请求建立标识信息,将所述标识信息交由至所述生产多路复用器IO线程和所述消费多路复用器IO线程;以及,将所述写数据请求、所述标识信息和所述应答数据关联后保存;所述查询单元用于根据接收到的标识信息调取对应的所述写数据请求或所述应答数据。实际工作中,所述分布式消息队列作为一个排序中转结构可有效协助实现代理服务器和存储服务器之间的异步请求和异步应答,从而满足代理服务器异步应答应用服务器的需求。
请参考图4所示,本发明还提供一种多路复用异步处理方法,所述方法包含:
S401:接收应用服务器上传的数据请求,并分析所述数据请求的数据类型;
S402:当所述数据请求为写数据请求时,将所述写数据请求交由生产多路复用器IO线程;
S403:生产多路复用器IO线程将所述写数据请求异步写入分布式消息队列,并接收所述分布式消息队列反馈的第一应答响应;
S404:多个消费多路复用器IO线程于所述分布式消息队列中拉取相同的所述写数据请求,并根据所述写数据请求将对应的写数据异步写入多个存储服务器;
S405:将所述存储服务器反馈的应答数据存入所述分布式消息队列后,生成第二应答响应,将所述第二应答响应异步反馈至所述生产多路复用器IO线程;
S406:生产多路复用器IO线程根据所述第一应答响应和所述第二应答响应于所述分布式消息队列中获得应答数据,将所述应答数据反馈至应用服务器。
请参考图5所示,实际工作中,本发明所提供的多路复用异步处理方法在写数据的过程中,具体流程如下:
1、应用服务器向代理服务器发送写请求数据,然后同步等待代理服务器的应答。
2、代理服务器消息队列生产者将写请求数据异步写入分布式消息队列中,分布式消息队列在完成消息的处理后将给代理服务器生产者发送应答ACk。
3、代理服务器消息队列消费者1和代理服务器消息队列消费者2即消费多路复用器IO线程从分布式消息队列中拉取相同的写请求数据,然后通过异步方式将写请求数据分别写入存储服务器主1和存储服务器主2,写入完成后不等应答,立即处理下一笔写请求。
4、存储服务器1和存储服务器2在处理完写请求后,将应答数据分别反馈给代理服务器消息队列消费者1和代理服务器消息队列消费者2。
5、代理服务器消息队列消费者1和代理服务器消息队列消费者2通过多路复用器中断机制获取到应答ACK后,异步返回给代理服务器消息队列生产者。
6、代理服务器消息队列生产者在接收到分布式消息队列ACK和代理服务器消息队列消费者1和代理服务器消息队列消费者2的两个ACK,也就是当一共收到3个应答ACK后,通过服务端多路复用器的IO线程将应答数据反馈给应用服务器。
在本发明一实施例中,所述方法还可包含:当所述数据请求为读数据请求时,通过内核中断机制调用所述消费多路复用器IO线程处理所述读数据请求;其后,所述消费多路复用器IO线程通过一致性哈希算法定位所述读数据请求所对应的存储服务器;通过异步方式将所述读数据请求转发至所述存储服务器;将所述存储服务器反馈的应答数据反馈至所述应用服务器。具体的,请结合图2所示,在实际工作中,本发明所提供的多路复用异步处理方法在读数据时,具体流程如下:
1、应用服务器向代理服务器发送读请求数据,然后同步等待代理服务器的应答。
2、代理服务器服务端多路复用器接收到应用服务器发送的读请求后,通过内核中断机制触发服务端多路复用器IO线程对读请求进行处理。
3、代理服务器服户端多路复用器IO线程通过一致性哈希算法,定位读请求应发送至存储服务器中的指定分片,并采用随机方式从指定分片的两个主节点中任意挑选一个主节点,然后触发代理服务器客户端多路复用IO线程对将读请求转发至指定的存储服务器主节点。
4、代理服务器客户端多路复用器IO线程通过异步方式将读请求转发至存储服务器主节点后,立即处理下一条待转发请求。
5、存储服务器在处理读请求完毕后,将应答数据返回给代理服务器的客户端多路复用器。
6、代理服务器的客户端多路复用器获取到应答数据后,通过内核中断处理机制,通知服务端代理服务器IO线程对接收到的应答数据进行处理。
7、代理服务器服务端多路复用器IO线程将应答数据返回给应用服务器。
在本发明一实施例中,所述方法还可包含:根据所述写数据请求建立标识信息,将所述标识信息交由至所述生产多路复用器IO线程和所述消费多路复用器IO线程;根据接收到的应答数据,将所述写数据请求、所述标识信息和所述应答数据关联后保存;所述消费多路复用器IO线程通过所述标识信息于所述分布式消息队列调取对应的所述写数据请求;所述生产多路复用器IO线程通过所述标识信息于所述分布式消息队列调取对应的所述应答数据。具体的,在该实施例中可采用分布式消息队列的方式将相关待处理的请求统一存储由各消费线程予以提取,后续当获得相关结果后,再由生成线程提取应答结果,从而保证数据的一致性。
本发明通过代理服务器通过对存储分片的双写机制解决了存储分片的高可用和数据强一致问题,并通过异步通信和多路复用机制,在解决了数据强一致的同时,又提升了服务端的请求负载能力和对应用服务器的响应时效性。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
如图6所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理单元130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图6中所示的所有部件;此外,电子设备600还可以包括图6中没有示出的部件,可以参考现有技术。
如图6所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部件的操作。
其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种多路复用异步处理系统,其特征在于,所述系统包含应用服务器、代理服务器和多个存储服务器;
所述应用服务器用于向所述代理服务器发送数据请求;
所述代理服务器包含分析模块、生产多路复用器IO线程、多个消费多路复用器IO线程和分布式消息队列;
所述分析模块用于分析接收到的数据请求的数据类型,当所述数据请求为写数据请求时,将所述写数据请求交由所述生产多路复用器IO线程;
所述生产多路复用器IO线程用于将所述写数据请求异步写入分布式消息队列,并根据所述分布式消息队列反馈的第一应答响应和所述消费多路复用器IO线程反馈的第二应答响应于所述分布式消息队列中获得应答数据,将所述应答数据反馈至应用服务器;
所述消费多路复用器IO线程于所述分布式消息队列中拉取相同的所述写数据请求,并根据所述写数据请求将对应的写数据异步写入多个存储服务器;以及,将所述存储服务器反馈的应答数据存入所述分布式消息队列后,生成第二应答响应,将所述第二应答响应异步反馈至所述生产多路复用器IO线程;
所述存储服务器用于根据所述消费多路复用器IO线程写入的写数据的执行结果生成应答数据,将所述应答数据异步反馈至所述消费多路复用器IO线程。
2.根据权利要求1所述的多路复用异步处理系统,其特征在于,所述分析模块还包含当所述数据请求为读数据请求时,通过内核中断机制调用所述消费多路复用器IO线程处理所述读数据请求。
3.根据权利要求2所述的多路复用异步处理系统,其特征在于,所述消费多路复用器IO线程还用于通过一致性哈希算法定位所述读数据请求所对应的存储服务器;通过异步方式将所述读数据请求转发至所述存储服务器;将所述存储服务器反馈的应答数据反馈至所述应用服务器。
4.根据权利要求1所述的多路复用异步处理系统,其特征在于,所述分布式消息队列包含关联单元和查询单元;
所述请求单元用于根据所述写数据请求建立标识信息,将所述标识信息交由至所述生产多路复用器IO线程和所述消费多路复用器IO线程;以及,将所述写数据请求、所述标识信息和所述应答数据关联后保存;
所述查询单元用于根据接收到的标识信息调取对应的所述写数据请求或所述应答数据。
5.一种多路复用异步处理方法,其特征在于,所述方法包含:
接收应用服务器上传的数据请求,并分析所述数据请求的数据类型;
当所述数据请求为写数据请求时,将所述写数据请求交由生产多路复用器IO线程;
生产多路复用器IO线程将所述写数据请求异步写入分布式消息队列,并接收所述分布式消息队列反馈的第一应答响应;
多个消费多路复用器IO线程于所述分布式消息队列中拉取相同的所述写数据请求,并根据所述写数据请求将对应的写数据异步写入多个存储服务器;将所述存储服务器反馈的应答数据存入所述分布式消息队列后,生成第二应答响应;将所述第二应答响应异步反馈至所述生产多路复用器IO线程;
生产多路复用器IO线程根据所述第一应答响应和所述第二应答响应于所述分布式消息队列中获得应答数据,将所述应答数据反馈至应用服务器。
6.根据权利要求5所述的多路复用异步处理方法,其特征在于,所述方法还包含:当所述数据请求为读数据请求时,通过内核中断机制调用所述消费多路复用器IO线程处理所述读数据请求。
7.根据权利要求6所述的多路复用异步处理方法,其特征在于,所述方法还包含:所述消费多路复用器IO线程通过一致性哈希算法定位所述读数据请求所对应的存储服务器;通过异步方式将所述读数据请求转发至所述存储服务器;将所述存储服务器反馈的应答数据反馈至所述应用服务器。
8.根据权利要求5所述的多路复用异步处理方法,其特征在于,所述方法还包含:
根据所述写数据请求建立标识信息,将所述标识信息交由至所述生产多路复用器IO线程和所述消费多路复用器IO线程;
根据接收到的应答数据,将所述写数据请求、所述标识信息和所述应答数据关联后保存;
所述消费多路复用器IO线程通过所述标识信息于所述分布式消息队列调取对应的所述写数据请求;
所述生产多路复用器IO线程通过所述标识信息于所述分布式消息队列调取对应的所述应答数据。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求5至8任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求5至8任一所述方法的计算机程序。
CN202010241041.5A 2020-03-31 2020-03-31 多路复用异步处理系统及方法 Active CN111464628B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010241041.5A CN111464628B (zh) 2020-03-31 2020-03-31 多路复用异步处理系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010241041.5A CN111464628B (zh) 2020-03-31 2020-03-31 多路复用异步处理系统及方法

Publications (2)

Publication Number Publication Date
CN111464628A true CN111464628A (zh) 2020-07-28
CN111464628B CN111464628B (zh) 2022-10-11

Family

ID=71679370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010241041.5A Active CN111464628B (zh) 2020-03-31 2020-03-31 多路复用异步处理系统及方法

Country Status (1)

Country Link
CN (1) CN111464628B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579620A (zh) * 2020-12-23 2021-03-30 上海上实龙创智能科技股份有限公司 一种基于消息队列的分布式系统数据最终一致性方法
CN113094362A (zh) * 2021-04-30 2021-07-09 中国银行股份有限公司 一种异步消息可靠投递和处理的方法和装置
CN113535432A (zh) * 2021-07-20 2021-10-22 西安力传智能技术有限公司 数据分流方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9436532B1 (en) * 2011-12-20 2016-09-06 Emc Corporation Method and system for implementing independent message queues by specific applications
CN106878473A (zh) * 2017-04-20 2017-06-20 腾讯科技(深圳)有限公司 一种消息处理方法、服务器集群及系统
CN110365786A (zh) * 2019-07-19 2019-10-22 中国工商银行股份有限公司 作业处理系统、异步作业调度方法和计算机设备
CN110597467A (zh) * 2019-09-19 2019-12-20 中国工商银行股份有限公司 高可用数据零丢失存储系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9436532B1 (en) * 2011-12-20 2016-09-06 Emc Corporation Method and system for implementing independent message queues by specific applications
CN106878473A (zh) * 2017-04-20 2017-06-20 腾讯科技(深圳)有限公司 一种消息处理方法、服务器集群及系统
CN110365786A (zh) * 2019-07-19 2019-10-22 中国工商银行股份有限公司 作业处理系统、异步作业调度方法和计算机设备
CN110597467A (zh) * 2019-09-19 2019-12-20 中国工商银行股份有限公司 高可用数据零丢失存储系统及方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579620A (zh) * 2020-12-23 2021-03-30 上海上实龙创智能科技股份有限公司 一种基于消息队列的分布式系统数据最终一致性方法
CN113094362A (zh) * 2021-04-30 2021-07-09 中国银行股份有限公司 一种异步消息可靠投递和处理的方法和装置
CN113094362B (zh) * 2021-04-30 2024-04-16 中国银行股份有限公司 一种异步消息可靠投递和处理的方法和装置
CN113535432A (zh) * 2021-07-20 2021-10-22 西安力传智能技术有限公司 数据分流方法、装置、电子设备及存储介质
CN113535432B (zh) * 2021-07-20 2023-12-15 西安力传智能技术有限公司 数据分流方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN111464628B (zh) 2022-10-11

Similar Documents

Publication Publication Date Title
CN111464628B (zh) 多路复用异步处理系统及方法
US10949158B2 (en) Screenshot method and apparatus
CN111897878B (zh) 主辅数据同步方法及系统
AU2019256257B2 (en) Processor core scheduling method and apparatus, terminal, and storage medium
CN111949614B (zh) 银行系统文件转换方法及装置
WO2021169674A1 (zh) 一种业务数据的处理方法和装置
JP2021524104A (ja) マスター・スタンドバイコンテナシステム切替
CN112351068A (zh) 信息同步方法、系统、装置、计算机设备和存储介质
CN114827171B (zh) 信息同步方法、装置、计算机设备和存储介质
CN113055483A (zh) 消息中间件数据处理方法、装置及系统
WO2024183581A1 (zh) Io数据处理方法、装置、设备及介质
CN111414303A (zh) 一种用于脚本性能测试的辅助系统及方法
CN112995317B (zh) 区块链共识方法及区块链节点
CN107547593B (zh) 一种实现日志同步的方法、装置及分布式系统
CN108595121B (zh) 数据存储方法和装置
CN110597467B (zh) 高可用数据零丢失存储系统及方法
CN112468574B (zh) 应用服务发布订阅机制的处理方法、装置及系统
CN117056049A (zh) 异步任务执行方法和系统
CN111090818B (zh) 资源管理方法、资源管理系统、服务器及计算机存储介质
CN111274176B (zh) 一种信息处理方法、电子设备、系统及存储介质
CN114979234A (zh) 分布式集群系统中会话控制共享方法及系统
CN111737297B (zh) 链路聚合调用信息的处理方法及装置
CN115174484A (zh) 基于rdma的数据传输方法、装置、设备及存储介质
CN113452948A (zh) 会议终端的控制方法、装置、设备及存储介质
CN108268607B (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
GR01 Patent grant
GR01 Patent grant