CN108459917A - 一种消息分配部件、消息处理系统以及消息分配方法 - Google Patents
一种消息分配部件、消息处理系统以及消息分配方法 Download PDFInfo
- Publication number
- CN108459917A CN108459917A CN201810214894.2A CN201810214894A CN108459917A CN 108459917 A CN108459917 A CN 108459917A CN 201810214894 A CN201810214894 A CN 201810214894A CN 108459917 A CN108459917 A CN 108459917A
- Authority
- CN
- China
- Prior art keywords
- message
- device identification
- assigned
- storage queue
- multiple messages
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明提供了一种消息分配部件、消息处理系统以及消息分配方法,该消息分配部件包括:消息接收器,用于接收一个或多个智能设备上报的多条消息;消息分发器,与消息接收器连接,用于根据多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;消息线程处理器,与一个或多个消息存储队列连接,用于将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。本发明提供的消息分配部件使得任何一个智能设备产生的消息有唯一的处理线程去处理,保证消息的高并发和顺序处理。
Description
技术领域
本发明涉及通信技术领域,特别是一种消息分配部件、消息处理系统、消息分配方法以及消息处理方法。
背景技术
随着物联网、云计算的快速发展,智能设备(如智能照明设备、智能摄像机等)出现了爆发式的增长,智能设备的节点越来越多,这些设备每时每刻都会产生海量的数据,如何采集和处理智能设备上报的数据也越来越受到厂商的重视,但是如何能保证高并发和有序地处理这些海量数据,成为一个迫切需要解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的消息分配部件、消息处理系统、消息分配方法以及消息处理方法,能够实现消息数据的高并发分配处理,同时能够保证消息的顺序处理。
本发明实施例提供了一种消息分配部件,所述消息分配部件与一个或多个智能设备建立连接,对所述一个或多个智能设备上报的消息进行分配处理,所述消息分配部件具体包括:消息接收器、消息分发器、一个或多个消息存储队列以及消息线程处理器;
所述消息接收器,用于接收所述一个或多个智能设备上报的多条消息;
所述消息分发器,与所述消息接收器连接,用于根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到所述一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;
所述消息线程处理器,与所述一个或多个消息存储队列连接,用于读取各个消息存储队列中的消息,并将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。
可选地,若所述多条消息各自携带时间信息,所述消息分发器还用于:
根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息按照时间的先后顺序分配到一个或多个消息存储队列中。
可选地,若所述多条消息各自携带时间信息,所述消息线程处理器还用于:
将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中。
可选地,所述消息分发器还用于:
对所述多条消息中每一条消息所携带的智能设备的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息存入与hash运算结果对应的消息存储队列中。
可选地,所述消息线程处理器还用于:
对各个消息存储队列中的每一条消息所携带的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息分发到与hash运算结果对应的处理线程中。
可选地,所述消息接收器包括:
通信模块,用于与所述一个或多个智能设备建立连接;
所述消息接收器通过所述通信模块接收所述一个或多个智能设备上报的多条消息。
可选地,所述消息接收器的数量包括多个。
可选地,所述消息线程处理器的数量包括多个,其中,一个消息线程处理器与一个消息存储队列连接,该消息线程处理器读取与其连接的消息存储队列中的消息。
可选地,所述消息线程处理器还用于:
根据当前处理线程的负载情况,确定是否新增一个或多个新的处理线程。
本发明实施例还提供了一种消息处理系统,包括上述任一个的消息分配部件,以及与所述消息分配部件连接的智能设备数据库组件;
所述消息分配部件将一个或多个智能设备上报的消息分配到一个或多个处理线程,由所述一个或多个处理线程调用所述智能设备数据库组件来对消息进行处理。
本发明实施例还提供了一种消息分配方法,应用于对一个或多个智能设备上报的消息进行分配处理的情况,所述方法包括:
接收所述一个或多个智能设备上报的多条消息;
根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;
读取各个消息存储队列中的消息,并将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。
可选地,若所述多条消息各自携带时间信息,所述根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到一个或多个消息存储队列中,包括:
根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息按照时间的先后顺序分配到一个或多个消息存储队列中。
可选地,若所述多条消息各自携带时间信息,所述将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,包括:
将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中。
可选地,所述根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到一个或多个消息存储队列中,包括:
对所述多条消息中每一条消息所携带的智能设备的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息存入与hash运算结果对应的消息存储队列中。
可选地,所述将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,包括:
对各个消息存储队列中的每一条消息所携带的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息分发到与hash运算结果对应的处理线程中。
可选地,所述方法还包括:
当满足预设条件时,新增一个或多个新的消息存储队列。
可选地,所述预设条件包括下列任意之一:
所述智能设备的数量大于第一预设数量阈值;
所述多条消息的数量大于第二预设数量阈值;
读取各个消息存储队列中的消息的速度小于预设速度阈值。
可选地,若所述方法应用于消息分配部件,所述第一预设数量阈值、所述第二预设数量阈值或者所述预设速度阈值由所述消息分配部件的性能情况来确定。
可选地,若由所述消息分配部件中的消息线程处理器来读取各个消息存储队列中的消息,则所述消息线程处理器的数量包括多个,其中,一个消息线程处理器与一个消息存储队列连接,该消息线程处理器读取与其连接的消息存储队列中的消息。
可选地,若新增一个新的消息存储队列,则新增一个新的消息线程处理器,由该新的消息线程处理器与该新的消息存储队列连接,该新的消息线程处理器读取该新的消息存储队列中的消息。
可选地,所述方法还包括:
根据当前处理线程的负载情况,确定是否新增一个或多个新的处理线程。
本发明实施例还提供了一种消息处理方法,通过上述的消息分配方法将一个或多个智能设备上报的消息分配到一个或多个处理线程,进而由所述一个或多个处理线程调用智能设备数据库组件来对消息进行处理。
本发明提供的消息分配部件,对一个或多个智能设备上报的消息进行分配处理,能够解决海量消息处理过程中乱序的问题。具体地,消息分配部件包括消息接收器、与消息接收器连接的消息分发器、与消息分发器连接的一个或多个消息存储队列以及与一个或多个消息存储队列连接的消息线程处理器,消息接收器用于接收一个或多个智能设备上报的多条消息;消息分发器用于根据多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;消息线程处理器用于读取各个消息存储队列中的消息,并将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。可以看到,本发明提供的消息分配部件,一方面通过一个或多个消息存储队列以及一个或多个处理线程,能够对一个或多个智能设备产生的海量数据进行处理;另一方面将具有相同的设备标识的消息分配到同一个消息存储队列以及将具有相同的设备标识的消息分配到同一个处理线程,能够保证任何一个智能设备产生的消息有唯一的处理线程去处理,保证了消息的高并发处理,同时也保证了消息的顺序处理。
进一步地,由于消息一般都有时序性要求,下一条消息依赖于上一条消息的状态,消息处理不能乱序,本发明提供的消息分配部件中,消息分发器还用于根据消息接收器接收到多条消息的先后顺序以及多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列中;以及消息线程处理器还用于将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中;这样能够更好地保证消息的顺序处理。此外,本发明提供的消息分配部件中,一个消息线程处理器与一个消息存储队列连接,该消息线程处理器读取与其连接的消息存储队列中的消息,通过这一负载均衡的策略提高了海量消息处理的效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示意了根据本发明一实施例的消息分配部件的结构图;
图2示意了根据本发明另一实施例的消息分配部件的结构图;
图3示意了根据本发明又一实施例的消息分配部件的结构图;
图4示意了根据本发明一实施例的消息处理系统的结构图;
图5示意了根据本发明一实施例的消息分配方法的流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如前文介绍,如何能保证高并发和有序地处理智能设备产生的海量数据,成为一个迫切需要解决的问题,为了解决这一技术问题,本发明实施例提供了一种消息分配部件,它与一个或多个智能设备建立连接,对一个或多个智能设备上报的消息进行分配处理,能够实现消息数据的高并发处理,同时能够保证消息的顺序处理。
图1示意了根据本发明一实施例的消息分配部件的结构图,在图1中,消息分配部件100与一个或多个智能设备110建立连接,对一个或多个智能设备110上报的消息进行分配处理,消息分配部件100具体可以包括以下器件:
消息接收器101,用于接收一个或多个智能设备110上报的多条消息;
消息分发器102,与消息接收器101连接,用于根据多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列103中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;
消息线程处理器104,与一个或多个消息存储队列103连接,用于读取各个消息存储队列103中的消息,并将各个消息存储队列103中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。
本发明实施例提供的消息分配部件100,一方面通过一个或多个消息存储队列以及一个或多个处理线程,能够对一个或多个智能设备110产生的海量数据进行处理;另一方面将具有相同的设备标识的消息分配到同一个消息存储队列以及将具有相同的设备标识的消息分配到同一个处理线程,能够保证任何一个智能设备110产生的消息有唯一的处理线程去处理,保证了消息的高并发处理,同时保证了消息的顺序处理。
以智能设备A上报消息为例,智能设备A上报消息a,消息分配部件100中的消息接收器101接收消息a,随后消息分发器102根据消息a中携带的智能设备A的设备标识,将该消息a分配到对应的消息存储队列103(不妨假设消息存储队列q1)中;之后,消息线程处理器104从消息存储队列q1中读取消息a,按照消息a中携带的智能设备A的设备标识,将消息a分配到对应的处理线程(不妨假设处理线程t1)。接下来,智能设备A上报消息b,消息分配部件100中的消息接收器101接收消息b,随后消息分发器102根据消息b中携带的智能设备A的设备标识,将该消息b分配到对应的消息存储队列q1中;之后,消息线程处理器104从消息存储队列q1中读取消息b,按照消息b中携带的智能设备A的设备标识,将消息b分配到对应的处理线程t1,以此类推。此外,消息a或消息b的数量可以是多条,并且内容也不相同,例如,消息a可以是消息a1、a2、a3等等,消息b可以是消息b1、b2、b3等等。
进一步,以消息a是消息a1、a2、a3为例,智能设备A上报消息a1、a2、a3,消息分配部件100中的消息接收器101接收消息a1、a2、a3。随后,消息分发器102根据消息a1中携带的智能设备A的设备标识,将该消息a1分配到消息存储队列q1中;同样地,消息分发器102根据消息a2中携带的智能设备A的设备标识,将该消息a2分配到消息存储队列q1中,消息分发器102根据消息a3中携带的智能设备A的设备标识,将该消息a3分配到消息存储队列q1中。之后,消息线程处理器104从消息存储队列q1中读取消息a1,将消息a1分配到处理线程t1;同样地,消息线程处理器104从消息存储队列q1中读取消息a2,将消息a2分配到处理线程t1,消息线程处理器104从消息存储队列q1中读取消息a3,将消息a3分配到处理线程t1。需要说明的是,此处列举仅是示意性的,并不对本发明实施例进行限制。
在本发明实施例中,一个或多个智能设备110上报的消息可以是状态消息,也可以是指令消息等,本发明实施例对消息的类型不作限制。此外,消息的内容可以非常简单,例如只包含文本字符串;也可以更复杂,可能包含嵌入对象等,消息被分配到消息存储队列103,进而被分配到处理线程。消息存储队列103是在消息的传输过程中保存消息的容器,它在将消息从源中继到目标时充当中间人,提供路由并保证消息的传递,如果发送消息时接收者不可用,消息存储队列103会保留消息,直到可以成功地传递消息。
本发明实施例提及的处理线程,也称为轻量级进程,一个标准的线程由线程ID(标识)、当前指令指针、寄存器集合和堆栈组成。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现出间断性。线程也有就绪、阻塞和运行三种基本状态。就绪状态是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机;运行状态是指线程占有处理机正在运行;阻塞状态是指线程在等待一个事件(如某个信号量等),逻辑上不可执行。
在本发明实施例中,一个或多个智能设备110中的消息是一直上传的,实际应用中处理线程一直保持,不会关闭;若没有消息,则处理线程进入休眠状态,即不关闭,处理线程让出资源,将资源交给其他处理线程;若来消息,则处理线程被唤醒,进入就绪状态等待执行。
在本发明实施例中,各个智能设备110的设备标识在消息分配部件100中是唯一记录的,也就是说,消息分配部件100能够根据设备标识来区分一个或多个智能设备110。因而,消息分配部件100中的消息分发器102能够根据多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列103中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;以及,消息分配部件100中的消息线程处理器104能够将各个消息存储队列103中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。这里,一个消息存储队列103中的消息可以被分配到一个或多个处理线程中,可以提高消息分配部件100的吞吐量,提高消息处理的效率。
在本发明实施例中,消息存储队列103和智能设备110是一对多的关系,一个消息存储队列可以有多个智能设备和它关联,而一个智能设备只对应一个消息存储队列。
在本发明的可选实施例中,消息分发器102可以预先建立智能设备的设备标识与消息存储队列的第一对应关系,从而在第一对应关系中,根据多条消息中每一条消息携带的智能设备的设备标识,将该条消息分配到对应的消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列。在实际应用过程中,如果在第一对应关系中未查找到设备标识对应的消息存储队列,那么还可以动态地为设备标识分配消息存储队列,并在分配后记录到第一对应关系中。
在本发明的可选实施例中,消息分发器102也可以对多条消息中每一条消息所携带的智能设备的设备标识进行hash运算,随后根据hash运算结果,将该条信息存入与hash运算结果对应的消息存储队列中。具体地,hash运算是每一条分别做的,hash运算结果与消息存储队列之间存在索引关系,在对多条消息中每一条消息所携带的智能设备的设备标识进行hash运算得到hash运算结果后,可以查找索引关系,将该条消息分配到hash运算结果对应的消息存储队列中。对于智能设备来说,由于其设备标识是固定的,所以每次hash运算的结果都是相同的,这样可以确保将智能设备上报的消息都分配到对应的消息存储队列。在实际应用过程中,若在索引关系中未查找到hash运算结果对应的消息存储队列,则可以动态地为hash运算结果分配消息存储队列,并在分配后记录到索引关系中。
在本发明的可选实施例中,消息线程处理器104可以预先建立智能设备的设备标识与处理线程的第二对应关系,从而在第二对应关系中,将各个消息存储队列中的每一条消息,按照消息携带的设备标识将该条消息分配到对应的处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。在实际应用过程中,若在第二对应关系中未查找到设备标识对应的处理线程,则可以动态地为设备标识分配处理线程,并在分配后记录到第二对应关系中。
在本发明的可选实施例中,消息线程处理器104也可以对各个消息存储队列中的每一条消息所携带的设备标识进行hash运算,随后根据hash运算结果,将该条信息分发到与hash运算结果对应的处理线程中。具体地,hash运算是每一条分别做的,hash运算结果与处理线程之间存在索引关系,在对各个消息存储队列中的每一条消息所携带的设备标识进行hash运算得到hash运算结果后,可以查找索引关系,将该条消息分配到hash运算结果对应的处理线程中。对于智能设备来说,由于其设备标识是固定的,所以每次hash运算的结果都是相同的,这样可以确保任何一个智能设备产生的消息有唯一的处理线程去处理,保证了消息的高并发处理,同时保证了消息的顺序处理。在实际应用过程中,若在索引关系中未查找到hash运算结果对应的处理线程,则可以动态地为hash运算结果分配处理线程,并在分配后记录到索引关系中。
上文提及的hash运算,是通过将单向哈希算法应用到任意数量的数据所得到的固定大小的结果。如果输入数据中有变化,则哈希也会发生变化。因此,本发明实施例对设备标识进行hash运算,可以得到固定大小的hash运算结果,并且对同一个智能设备的设备标识进行hash运算的结果相同,对不同智能设备的设备标识进行hash运算的结果是不同的。
在本发明的可选实施例中,由于消息一般都有时序性要求,即多条消息各自携带时间信息,下一条消息依赖于上一条消息的状态,消息处理不能乱序,本发明提供的消息分配部件100中,消息分发器102还用于根据消息接收器101接收到多条消息的先后顺序以及多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列103中;以及消息线程处理器104还用于将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中;这样能够更好地保证消息的顺序处理。
在本发明的另一可选实施例中,消息分发器102还用于根据多条消息各自携带的智能设备的设备标识,将多条消息按照时间的先后顺序分配到一个或多个消息存储队列103中;以及消息线程处理器104还用于将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中。
图2示意了根据本发明另一实施例的消息分配部件的结构图,在图2中,消息分配部件100中的消息接收器101可以包括通信模块1011,用于与一个或多个智能设备110建立连接;消息接收器101通过通信模块1011接收一个或多个智能设备110上报的多条消息。
图3示意了根据本发明又一实施例的消息分配部件的结构图,在图3中,消息分配部件100中的消息接收器101的数量可以包括多个,图3中示意了3个消息接收器101。消息分发器102的数量可以与消息接收器101对应,即,一个消息分发器102对应一个消息接收器101。此外,消息线程处理器104的数量也可以包括多个,其中,一个消息线程处理器104与一个消息存储队列103连接,该消息线程处理器读取与其连接的消息存储队列中的消息。需要说明的是,图3中的各个器件的数量仅是示意性的,并不对本发明进行限制。
本发明实施例提供的消息分配部件100能够处理海量并发数据,可以横向扩展消息存储队列,当吞吐量不够时还可以横向添加处理线程。在可选的实施例中,可以根据智能设备110的数量、多条消息的数量或者消息线程处理器104来确定是否新增消息存储队列,从而使得消息分配部件100更好地满足消息处理的需求。
在可选的实施例中,消息分配部件100中的消息线程处理器104可以根据当前处理线程的负载情况,确定是否新增一个或多个新的处理线程。
基于同一发明构思,本发明实施例还提供了一种消息处理系统,图4示意了根据本发明一实施例的消息处理系统的结构图,在图4中,消息处理系统可以包括前文介绍的消息分配部件100,以及与消息分配部件100连接的智能设备数据库组件410。消息分配部件100将一个或多个智能设备110上报的消息分配到一个或多个处理线程,由一个或多个处理线程调用智能设备数据库组件410来对消息进行处理。
基于同一发明构思,本发明实施例还提供了一种消息分配方法,可以对一个或多个智能设备上报的消息进行分配处理,能够实现消息数据的高并发处理,同时能够保证消息的顺序处理。图5示意了根据本发明一实施例的消息分配方法的流程示意图,参见图5,该方法可以包括以下步骤S502至S506。
步骤S502,接收一个或多个智能设备上报的多条消息。
步骤S504,根据多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列。
步骤S506,读取各个消息存储队列中的消息,并将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。
本发明实施例提供的消息分配方法,一方面通过一个或多个消息存储队列以及一个或多个处理线程,能够对一个或多个智能设备产生的海量数据进行处理;另一方面将具有相同的设备标识的消息分配到同一个消息存储队列以及将具有相同的设备标识的消息分配到同一个处理线程,能够保证任何一个智能设备产生的消息有唯一的处理线程去处理,保证了消息的高并发处理,同时保证了消息的顺序处理。
上文步骤S502中,一个或多个智能设备上报的消息可以是状态消息,也可以是指令消息等,本发明实施例对消息的类型不作限制。此外,消息的内容可以非常简单,例如只包含文本字符串;也可以更复杂,可能包含嵌入对象等,消息被分配到消息存储队列103,进而被分配到处理线程。消息存储队列103是在消息的传输过程中保存消息的容器,它在将消息从源中继到目标时充当中间人,提供路由并保证消息的传递,如果发送消息时接收者不可用,消息存储队列103会保留消息,直到可以成功地传递消息。
上文步骤S506中提及的处理线程,也称为轻量级进程,是程序执行流的最小单元。一个标准的线程由线程ID(标识)、当前指令指针、寄存器集合和堆栈组成。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现出间断性。线程也有就绪、阻塞和运行三种基本状态。就绪状态是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机;运行状态是指线程占有处理机正在运行;阻塞状态是指线程在等待一个事件(如某个信号量等),逻辑上不可执行。每一个程序都至少有一个线程,若程序只有一个线程,那就是程序本身。
在本发明实施例中,一个或多个智能设备中的消息是一直上传的,实际应用中处理线程一直保持,不会关闭;若没有消息,则处理线程进入休眠状态,即不关闭,处理线程让出资源,将资源交给其他处理线程;若来消息,则处理线程被唤醒,进入就绪状态等待执行。
在本发明的可选实施例中,上述步骤S502至S506的消息分配方法可以应用于消息分配部件,各个智能设备的设备标识在消息分配部件中是唯一记录的,也就是说,消息分配部件能够根据设备标识来区分一个或多个智能设备。因而,消息分配部件可以能够根据多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;以及,消息分配部件能够将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。这里,一个消息存储队列中的消息可以被分配到一个或多个处理线程中,可以提高消息分配部件的吞吐量,提高消息处理的效率。
在本发明实施例中,消息存储队列和智能设备是一对多的关系,一个消息存储队列可以有多个智能设备和它关联,而一个智能设备只对应一个消息存储队列。
在本发明的可选实施例中,可以预先建立智能设备的设备标识与消息存储队列的第一对应关系,从而,上文步骤S504具体可以是在第一对应关系中,根据多条消息中每一条消息携带的智能设备的设备标识,将该条消息分配到对应的消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列。在实际应用过程中,如果在第一对应关系中未查找到设备标识对应的消息存储队列,那么还可以动态地为设备标识分配消息存储队列,并在分配后记录到第一对应关系中。
在本发明的可选实施例中,上文步骤S504具体也可以对多条消息中每一条消息所携带的智能设备的设备标识进行hash运算,随后根据hash运算结果,将该条信息存入与hash运算结果对应的消息存储队列中。具体地,hash运算是每一条分别做的,hash运算结果与消息存储队列之间存在索引关系,在对多条消息中每一条消息所携带的智能设备的设备标识进行hash运算得到hash运算结果后,可以查找索引关系,将该条消息分配到hash运算结果对应的消息存储队列中。对于智能设备来说,由于其设备标识是固定的,所以每次hash运算的结果都是相同的,这样可以确保将智能设备上报的消息都分配到对应的消息存储队列。在实际应用过程中,若在索引关系中未查找到hash运算结果对应的消息存储队列,则可以动态地为hash运算结果分配消息存储队列,并在分配后记录到索引关系中。
在本发明的可选实施例中,可以预先建立智能设备的设备标识与处理线程的第二对应关系,从而,上文步骤S506具体可以是在第二对应关系中,将各个消息存储队列中的每一条消息,按照消息携带的设备标识将该条消息分配到对应的处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。在实际应用中,若在第二对应关系中未查找到设备标识对应的处理线程,则可以动态地为设备标识分配处理线程,并在分配后记录到第二对应关系中。
在本发明的可选实施例中,上文步骤S506具体也可以对各个消息存储队列中的每一条消息所携带的设备标识进行hash运算,随后根据hash运算结果,将该条信息分发到与hash运算结果对应的处理线程中。具体地,hash运算是每一条分别做的,hash运算结果与处理线程之间存在索引关系,在对各个消息存储队列中的每一条消息所携带的设备标识进行hash运算得到hash运算结果后,可以查找索引关系,将该条消息分配到hash运算结果对应的处理线程中。对于智能设备来说,由于其设备标识是固定的,所以每次hash运算的结果都是相同的,这样可以确保任何一个智能设备产生的消息有唯一的处理线程去处理,保证了消息的高并发处理,同时保证了消息的顺序处理。在实际应用过程中,若在索引关系中未查找到hash运算结果对应的处理线程,则可以动态地为hash运算结果分配处理线程,并在分配后记录到索引关系中。
上文提及的hash运算,是通过将单向哈希算法应用到任意数量的数据所得到的固定大小的结果。如果输入数据中有变化,则哈希也会发生变化。因此,本发明实施例对设备标识进行hash运算,可以得到固定大小的hash运算结果,并且对同一个智能设备的设备标识进行hash运算的结果相同,对不同智能设备的设备标识进行hash运算的结果是不同的。
在本发明的可选实施例中,由于消息一般都有时序性要求,即多条消息各自携带时间信息,下一条消息依赖于上一条消息的状态,消息处理不能乱序,因此,上文步骤S504可以根据接收到多条消息的先后顺序以及多条消息各自携带的智能设备的设备标识,将多条消息分配到一个或多个消息存储队列中;以及上文步骤S506可以将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中;这样能够更好地保证消息的顺序处理。
在本发明的另一可选实施例中,上文步骤S504还可以根据多条消息各自携带的智能设备的设备标识,将多条消息按照时间的先后顺序分配到一个或多个消息存储队列中;以及上文步骤S506可以将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中。
本发明提供的消息分配方法能够处理海量并发数据,可以横向扩展消息存储队列,当吞吐量不够时还可以横向添加处理线程。
在可选的实施例中,当满足预设条件时,可以新增一个或多个新的消息存储队列。这里的预设条件可以是智能设备的数量大于第一预设数量阈值,多条消息的数量大于第二预设数量阈值,或者读取各个消息存储队列中的消息的速度小于预设速度阈值,等等。这里的第一预设数量阈值、第二预设数量阈值或者预设速度阈值可以由消息分配部件的性能情况来确定,这里的性能情况如硬件负载、所处网络等等。
在可选的实施例中,若由消息分配部件中的消息线程处理器来读取各个消息存储队列中的消息,则消息线程处理器的数量可以包括多个,其中,一个消息线程处理器与一个消息存储队列连接,该消息线程处理器读取与其连接的消息存储队列中的消息,通过这一负载均衡的策略提高了海量消息处理的效率。
在可选的实施例中,若新增一个新的消息存储队列,则新增一个新的消息线程处理器,由该新的消息线程处理器与该新的消息存储队列连接,该新的消息线程处理器读取该新的消息存储队列中的消息。
在可选的实施例中,还可以根据当前处理线程的负载情况,确定是否新增一个或多个新的处理线程。
基于同一发明构思,本发明实施例还提供了一种消息处理方法,通过上述的消息分配方法将一个或多个智能设备上报的消息分配到一个或多个处理线程,进而由一个或多个处理线程调用智能设备数据库组件来对消息进行处理。
以上所述的实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的示例性实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (22)
1.一种消息分配部件,其特征在于,所述消息分配部件与一个或多个智能设备建立连接,对所述一个或多个智能设备上报的消息进行分配处理,所述消息分配部件具体包括:消息接收器、消息分发器、一个或多个消息存储队列以及消息线程处理器;
所述消息接收器,用于接收所述一个或多个智能设备上报的多条消息;
所述消息分发器,与所述消息接收器连接,用于根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到所述一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;
所述消息线程处理器,与所述一个或多个消息存储队列连接,用于读取各个消息存储队列中的消息,并将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。
2.根据权利要求1所述的消息分配部件,其特征在于,若所述多条消息各自携带时间信息,所述消息分发器还用于:
根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息按照时间的先后顺序分配到所述一个或多个消息存储队列中。
3.根据权利要求1所述的消息分配部件,其特征在于,若所述多条消息各自携带时间信息,所述消息线程处理器还用于:
将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中。
4.根据权利要求1所述的消息分配部件,其特征在于,所述消息分发器还用于:
对所述多条消息中每一条消息所携带的智能设备的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息存入与hash运算结果对应的消息存储队列中。
5.根据权利要求1所述的消息分配部件,其特征在于,所述消息线程处理器还用于:
对各个消息存储队列中的每一条消息所携带的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息分发到与hash运算结果对应的处理线程中。
6.根据权利要求1所述的消息分配部件,其特征在于,所述消息接收器包括:
通信模块,用于与所述一个或多个智能设备建立连接;
所述消息接收器通过所述通信模块接收所述一个或多个智能设备上报的多条消息。
7.根据权利要求1所述的消息分配部件,其特征在于,所述消息接收器的数量包括多个。
8.根据权利要求1所述的消息分配部件,其特征在于,所述消息线程处理器的数量包括多个,其中,一个消息线程处理器与一个消息存储队列连接,该消息线程处理器读取与其连接的消息存储队列中的消息。
9.根据权利要求1所述的消息分配部件,其特征在于,所述消息线程处理器还用于:
根据当前处理线程的负载情况,确定是否新增一个或多个新的处理线程。
10.一种消息处理系统,其特征在于,包括权利要求1-9中任一项所述的消息分配部件,以及与所述消息分配部件连接的智能设备数据库组件;
所述消息分配部件将一个或多个智能设备上报的消息分配到一个或多个处理线程,由所述一个或多个处理线程调用所述智能设备数据库组件来对消息进行处理。
11.一种消息分配方法,其特征在于,应用于对一个或多个智能设备上报的消息进行分配处理的情况,所述方法包括:
接收所述一个或多个智能设备上报的多条消息;
根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到一个或多个消息存储队列中,其中,具有相同的设备标识的消息被分配到同一个消息存储队列;
读取各个消息存储队列中的消息,并将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,其中,具有相同的设备标识的消息被分配到同一个处理线程。
12.根据权利要求11所述的方法,其特征在于,若所述多条消息各自携带时间信息,所述根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到一个或多个消息存储队列中,包括:
根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息按照时间的先后顺序分配到一个或多个消息存储队列中。
13.根据权利要求11所述的方法,其特征在于,若所述多条消息各自携带时间信息,所述将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,包括:
将各个消息存储队列中的消息,按照消息携带的设备标识和消息的时间先后顺序分配到一个或多个处理线程中。
14.根据权利要求11所述的方法,其特征在于,所述根据所述多条消息各自携带的智能设备的设备标识,将所述多条消息分配到一个或多个消息存储队列中,包括:
对所述多条消息中每一条消息所携带的智能设备的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息存入与hash运算结果对应的消息存储队列中。
15.根据权利要求11所述的方法,其特征在于,所述将各个消息存储队列中的消息,按照消息携带的设备标识分配到一个或多个处理线程中,包括:
对各个消息存储队列中的每一条消息所携带的设备标识进行哈希hash运算,随后根据hash运算结果,将该条信息分发到与hash运算结果对应的处理线程中。
16.根据权利要求11所述的方法,其特征在于,还包括:
当满足预设条件时,新增一个或多个新的消息存储队列。
17.根据权利要求16所述的方法,其特征在于,所述预设条件包括下列任意之一:
所述智能设备的数量大于第一预设数量阈值;
所述多条消息的数量大于第二预设数量阈值;
读取各个消息存储队列中的消息的速度小于预设速度阈值。
18.根据权利要求17所述的方法,其特征在于,若所述方法应用于消息分配部件,所述第一预设数量阈值、所述第二预设数量阈值或者所述预设速度阈值由所述消息分配部件的性能情况来确定。
19.根据权利要求18所述的方法,其特征在于,若由所述消息分配部件中的消息线程处理器来读取各个消息存储队列中的消息,则所述消息线程处理器的数量包括多个,其中,一个消息线程处理器与一个消息存储队列连接,该消息线程处理器读取与其连接的消息存储队列中的消息。
20.根据权利要求19所述的方法,其特征在于,若新增一个新的消息存储队列,则新增一个新的消息线程处理器,由该新的消息线程处理器与该新的消息存储队列连接,该新的消息线程处理器读取该新的消息存储队列中的消息。
21.根据权利要求11所述的方法,其特征在于,还包括:
根据当前处理线程的负载情况,确定是否新增一个或多个新的处理线程。
22.一种消息处理方法,其特征在于,通过权利要求11-21中任一项所述的消息分配方法将一个或多个智能设备上报的消息分配到一个或多个处理线程,进而由所述一个或多个处理线程调用智能设备数据库组件来对消息进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810214894.2A CN108459917A (zh) | 2018-03-15 | 2018-03-15 | 一种消息分配部件、消息处理系统以及消息分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810214894.2A CN108459917A (zh) | 2018-03-15 | 2018-03-15 | 一种消息分配部件、消息处理系统以及消息分配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108459917A true CN108459917A (zh) | 2018-08-28 |
Family
ID=63236522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810214894.2A Pending CN108459917A (zh) | 2018-03-15 | 2018-03-15 | 一种消息分配部件、消息处理系统以及消息分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108459917A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109407970A (zh) * | 2018-09-12 | 2019-03-01 | 新华三技术有限公司成都分公司 | 读写请求处理方法、装置及电子设备 |
CN109446268A (zh) * | 2018-10-09 | 2019-03-08 | 联动优势科技有限公司 | 一种数据同步方法及装置 |
CN109815256A (zh) * | 2018-12-21 | 2019-05-28 | 聚好看科技股份有限公司 | 一种数据处理方法、装置、电子设备和存储介质 |
CN110427386A (zh) * | 2019-08-05 | 2019-11-08 | 广州华多网络科技有限公司 | 数据处理方法、装置及计算机存储介质 |
CN110704208A (zh) * | 2019-09-19 | 2020-01-17 | 深圳证券交易所 | 多个系统的消息处理方法、服务器及存储介质 |
CN110851288A (zh) * | 2019-10-17 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 消息处理方法及装置 |
CN111917617A (zh) * | 2020-07-31 | 2020-11-10 | 宁波奥克斯电气股份有限公司 | 智能家电设备控制方法、装置、服务器及存储介质 |
CN112134909A (zh) * | 2019-06-24 | 2020-12-25 | 同方威视科技江苏有限公司 | 时序数据处理方法、装置、系统、服务器及可读存储介质 |
CN112148502A (zh) * | 2020-09-11 | 2020-12-29 | 浙江每日互动网络科技股份有限公司 | 消息分发方法、电子设备和介质 |
CN112202750A (zh) * | 2020-09-25 | 2021-01-08 | 统信软件技术有限公司 | 策略执行的控制方法、策略执行系统及计算设备 |
CN112860446A (zh) * | 2019-11-27 | 2021-05-28 | 上海哔哩哔哩科技有限公司 | 消息分发方法 |
CN113127220A (zh) * | 2019-12-31 | 2021-07-16 | 深圳云天励飞技术有限公司 | 一种数据下发方法、装置及电子设备 |
CN114567519A (zh) * | 2022-02-28 | 2022-05-31 | 武汉世聪智能科技有限公司 | 一种多线程并行管理多个智能设备指令消息的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150040140A1 (en) * | 2013-08-01 | 2015-02-05 | International Business Machines Corporation | Consuming Ordered Streams of Messages in a Message Oriented Middleware |
CN104796456A (zh) * | 2015-03-17 | 2015-07-22 | 青岛海尔智能家电科技有限公司 | 一种消息处理方法及装置 |
CN105187533A (zh) * | 2015-09-10 | 2015-12-23 | 浪潮软件股份有限公司 | 一种数据传输的方法及装置 |
CN106656863A (zh) * | 2016-12-31 | 2017-05-10 | 广东欧珀移动通信有限公司 | 业务监控方法、装置和计算机设备 |
CN107025142A (zh) * | 2016-01-29 | 2017-08-08 | 华为技术有限公司 | 一种线程间消息传递方法、装置及电子设备 |
-
2018
- 2018-03-15 CN CN201810214894.2A patent/CN108459917A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150040140A1 (en) * | 2013-08-01 | 2015-02-05 | International Business Machines Corporation | Consuming Ordered Streams of Messages in a Message Oriented Middleware |
CN104796456A (zh) * | 2015-03-17 | 2015-07-22 | 青岛海尔智能家电科技有限公司 | 一种消息处理方法及装置 |
CN105187533A (zh) * | 2015-09-10 | 2015-12-23 | 浪潮软件股份有限公司 | 一种数据传输的方法及装置 |
CN107025142A (zh) * | 2016-01-29 | 2017-08-08 | 华为技术有限公司 | 一种线程间消息传递方法、装置及电子设备 |
CN106656863A (zh) * | 2016-12-31 | 2017-05-10 | 广东欧珀移动通信有限公司 | 业务监控方法、装置和计算机设备 |
Non-Patent Citations (1)
Title |
---|
王彦明;毛元泽;刘一臻;: "航空电子系统消息队列的设计与实现", 信息通信, no. 07, pages 92 - 93 * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109407970B (zh) * | 2018-09-12 | 2022-02-11 | 新华三技术有限公司成都分公司 | 读写请求处理方法、装置及电子设备 |
CN109407970A (zh) * | 2018-09-12 | 2019-03-01 | 新华三技术有限公司成都分公司 | 读写请求处理方法、装置及电子设备 |
CN109446268A (zh) * | 2018-10-09 | 2019-03-08 | 联动优势科技有限公司 | 一种数据同步方法及装置 |
CN109815256A (zh) * | 2018-12-21 | 2019-05-28 | 聚好看科技股份有限公司 | 一种数据处理方法、装置、电子设备和存储介质 |
CN112134909A (zh) * | 2019-06-24 | 2020-12-25 | 同方威视科技江苏有限公司 | 时序数据处理方法、装置、系统、服务器及可读存储介质 |
WO2020259017A1 (zh) * | 2019-06-24 | 2020-12-30 | 同方威视科技江苏有限公司 | 时序数据处理方法、装置、系统、服务器及可读存储介质 |
CN112134909B (zh) * | 2019-06-24 | 2022-04-19 | 同方威视科技江苏有限公司 | 时序数据处理方法、装置、系统、服务器及可读存储介质 |
CN110427386A (zh) * | 2019-08-05 | 2019-11-08 | 广州华多网络科技有限公司 | 数据处理方法、装置及计算机存储介质 |
CN110427386B (zh) * | 2019-08-05 | 2023-09-19 | 广州方硅信息技术有限公司 | 数据处理方法、装置及计算机存储介质 |
CN110704208A (zh) * | 2019-09-19 | 2020-01-17 | 深圳证券交易所 | 多个系统的消息处理方法、服务器及存储介质 |
CN110704208B (zh) * | 2019-09-19 | 2023-03-14 | 深圳证券交易所 | 多个系统的消息处理方法、服务器及存储介质 |
CN110851288A (zh) * | 2019-10-17 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 消息处理方法及装置 |
CN110851288B (zh) * | 2019-10-17 | 2021-08-03 | 腾讯科技(深圳)有限公司 | 消息处理方法及装置 |
CN112860446A (zh) * | 2019-11-27 | 2021-05-28 | 上海哔哩哔哩科技有限公司 | 消息分发方法 |
CN113127220A (zh) * | 2019-12-31 | 2021-07-16 | 深圳云天励飞技术有限公司 | 一种数据下发方法、装置及电子设备 |
CN113127220B (zh) * | 2019-12-31 | 2023-03-14 | 深圳云天励飞技术有限公司 | 一种数据下发方法、装置及电子设备 |
CN111917617A (zh) * | 2020-07-31 | 2020-11-10 | 宁波奥克斯电气股份有限公司 | 智能家电设备控制方法、装置、服务器及存储介质 |
CN112148502A (zh) * | 2020-09-11 | 2020-12-29 | 浙江每日互动网络科技股份有限公司 | 消息分发方法、电子设备和介质 |
CN112148502B (zh) * | 2020-09-11 | 2024-03-22 | 每日互动股份有限公司 | 消息分发方法、电子设备和介质 |
CN112202750A (zh) * | 2020-09-25 | 2021-01-08 | 统信软件技术有限公司 | 策略执行的控制方法、策略执行系统及计算设备 |
CN112202750B (zh) * | 2020-09-25 | 2023-01-24 | 统信软件技术有限公司 | 策略执行的控制方法、策略执行系统及计算设备 |
CN114567519A (zh) * | 2022-02-28 | 2022-05-31 | 武汉世聪智能科技有限公司 | 一种多线程并行管理多个智能设备指令消息的方法及装置 |
CN114567519B (zh) * | 2022-02-28 | 2024-06-18 | 武汉世聪智能科技有限公司 | 一种多线程并行管理多个智能设备指令消息的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108459917A (zh) | 一种消息分配部件、消息处理系统以及消息分配方法 | |
CN101459627B (zh) | 消息管理方法 | |
US8671134B2 (en) | Method and system for data distribution in high performance computing cluster | |
US8095598B2 (en) | Methods and apparatus for subscribing/publishing messages in an enterprising computing environment | |
CN109978423A (zh) | 库存调度方法、装置以及计算机可读存储介质 | |
CN101452399B (zh) | 任务二级调度模块及方法 | |
US8428076B2 (en) | System and method for priority scheduling of plurality of message types with serialization constraints and dynamic class switching | |
CN103294531A (zh) | 一种任务分配方法及系统 | |
CN105868008B (zh) | 基于关键资源和数据预处理的资源调度方法及识别系统 | |
CN110383764A (zh) | 无服务器系统中使用历史数据处理事件的系统和方法 | |
JP2004199678A (ja) | タスク・スケジューリングの方法、システム、およびプログラム製品 | |
CN105450618A (zh) | 一种api服务器处理大数据的运算方法及其系统 | |
US20090199208A1 (en) | Queued message dispatch | |
CN108121608A (zh) | 一种队列调度方法以及节点设备 | |
CN103309738A (zh) | 用户作业调度方法及装置 | |
CN101616083A (zh) | 一种报文转发方法和装置 | |
CN104199912B (zh) | 一种任务处理的方法及装置 | |
CN102255926A (zh) | MapReduce系统中的任务分配方法、系统及装置 | |
US9537810B2 (en) | System and method for flexible holding storage during messaging | |
CN108153596A (zh) | 一种基于无锁队列的消息处理方法和装置 | |
CN102546424A (zh) | 报文保序方法及装置 | |
CN110889656A (zh) | 一种仓库规则配置方法和装置 | |
CN110914805A (zh) | 用于分层任务调度的计算系统 | |
CN104378412A (zh) | 云环境下意识到用户周期性资源需求的动态负载均衡方法 | |
CN105049372A (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 |