一种异步通信推送系统的制作方法

文档序号:29925058发布日期:2022-05-07 10:48阅读:64来源:国知局
一种异步通信推送系统的制作方法

1.本发明涉及通信技术领域,特别涉及一种异步通信推送系统。


背景技术:

2.对于异步通信接口或系统,已有的常用方案是基于消息中间件来接收消息并同步储存;通过监听或订阅消息,在业务请求后进行业务处理;业务数据结果形成后,回调执行结果发送操作。
3.在现有方案中,主要以业务数据流驱动异步推送操作,整个数据流程完全依赖于业务处理流程。当业务处理流程发生意外时就会影响到异步推送操作,例如:队列堵塞可能会导致异步推送晚于期望执行时间;中间件异常丢失消息将造成异步推送操作不执行,等等。这样就会致使调用端的流程产生异常,使得业务流程缺失,并有可能在业务系统中产生不完整数据。


技术实现要素:

4.本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种异步通信推送模型,能够最大程度的保证异步通信流程的完整度,进一步提升系统的稳定性,并且减少对外部接口异常的处理。
5.根据本发明的第一方面实施例的基于订单信息保障的异步通信推送方法,其特征在于,包括:
6.消息中间件、消息受理模块和消息推送模块;
7.所述消息中间件,包括分发队列与推送队列,所述分发队列能够存储待处理的业务请求,同时所述分发队列能够被业务系统所监听;所述推送队列能够接收并存储待推送的结果消息,同时所述推送队列经由所述消息推送模块监听;
8.所述消息受理模块作为所述异步通信推送系统的入口,具有第一外部接口,所述第一外部接口能够接收来自外部接入系统的http协议数据,且所述消息受理模块能够向所述消息推送模块进行下单请求;
9.所述消息推送模块,能够接收所述消息受理模块的下单请求,所述消息推送模块还能监听所述消息中间件的推送队列,所述消息推送模块能够配送订单及触发回调推送操作。
10.根据本发明实施例的空调调控装置,至少具有如下有益效果:
11.异步通信系统利用消息中间件,实现了业务系统与异步通信推送模型的解耦合,能够增加整个异步通信推送模型的可拓展性与易集成性,同时在业务数据流的基础上,利用订单任务进行驱动,增强了通信过程的可靠性,可以减少异常情况的发生。用户在使用本系统的时候,能够更简便的进行操作,无需为现有系统中可能发生的异常情况进行担心。根据本发明的一些实施例,所述故障报警模块还可以利用gprs技术定位调控装置的位置。
12.根据本发明的一些实施例,所述第一外部接口采用的使restful风格的接口。
13.根据本发明的一些实施例,所述消息受理模块在接收到来自外部接入系统的信息后,还能够实现对消息的校验与存储。
14.根据本发明的一些实施例,所述消息受理模块在对多数消息推送模块进行下单请求的时候,需要先完成消息的校验和存储,在进行下单请求,且在所述下单请求的操作后,还需要向外部接入系统返回受理结果的消息。
15.根据本发明的一些实施例,所述消息推送模块在监听到所述推送队列中来自业务系统的消息后,可以查找对应的订单信息,并依据该订单执行回调操作,将结果消息发送至外部接入系统,然后取消定时配送任务。
附图说明
16.本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
17.图1为本发明实施例的异步通信推送模型的结构框图。
18.消息中间件100、分发队列110、推送队列120、消息受理模块200、消息推送模块300、外部接入系统400、业务系统500。
具体实施方式
19.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
20.在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
21.在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
22.本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
23.在现有技术的范围内,异步通信主要依靠业务数据流进行驱动,如果业务处理的过程出现意外就会导致异常状态的发生,造成业务流程缺失,甚至产生不完整数据。
24.为了解决现有技术的问题,现提出一种可靠性更高的异步通信推送模型,能够增加系统的稳定性。
25.实施例一、
26.如图1所示,本技术的实施例包括消息中间件100、消息受理模块200、消息推送模块300。由于本技术描述的系统在工作的时候需要与其他系统进行交互,为了方便理解,所以引入两个外部的系统,分别是外部接入系统400,与业务系统500。
27.其中,消息中间件100内部包括分发队列110与推送队列120。
28.分发队列110能够存储接收到的信息,在本实施例中,主要体现于存储待处理的业务请求,并且能够被业务系统500所监听。
29.推送队列120同样能够存储接收到的信息,在本实施例中,主要存储的信息是待推送的结果消息,此外,所述推送队列120还被消息推送模块300监听。
30.上述分发队列110和推送队列120构成的消息中间件100,能够实现消息推送模块300与业务系统500的解耦合,增加了设备的拓展性。
31.消息受理模块200是整个异步通信系统的入口,其上具有第一外部接口,该外部接口用于接收来自外部接入系统400发送的信息,具体的,所述第一外部接口采用http协议,对外提供restful风格的接口。消息受理模块200还需要能够完成对消息的基本校验与同步存储,这样能够提高设备在通信过程中的可靠性。优选的,消息受理模块200需要能够向所述消息推送模块300发送下单请求,在本实施例中,也是通过接口实现的这种功能,且消息受理模块200在向消息推送模块300发送下单请求后,消息推送模块300能够向消息受理模块200返回受理结果的消息。
32.可以理解到的是,第一外部接口的实现方式是多种多样的,可以以计算机接口的形式实现,也可以通过其他能够与外界进行数据交换的形式来实现,接口是目前条件下,本领域最常用的技术手段,不能理解为限制本技术的条件。
33.消息推送模块300,除了能够获取来自消息受理模块200的下单请求以外,还能够实现对推送队列120的监听。
34.根据本技术一些较优的实施例,消息推送模块300还能够根据接收到的信息,查找与其对应的订单信息,并依据订单信息执行回调操作,然后将结果消息发送至外部接入系统400。最后取消定时配送任务。
35.实施例一说明了本技术描述的异步推送模型的总体结构,以及其可以实现的功能,为了更方便本领域技术人员的理解,现在实施例一的基础上,举出几种例子,说明其在工作时候的信息交换。
36.实施例二、
37.在实施例一的提出的异步通信系统的基础上,举出一种正常工作的状态。本实施例中,异步通信系统内部的工作原理如下:
38.消息受理模块200收到来自外部接入系统400的业务请求,先对接收到的信息进行校验,然后消息受理模块200根据业务请求的类型,将消息发送至相应的分发队列110当中。同时,消息受理模块200调用消息推送模块300的下单接口生成订单,然后收到来自消息推送模块300的返回值:受理结果。消息推送模块200在收到下单请求后,启动定时配送任务。
39.业务系统500监听或者订阅分发队列110中,当处理完成之后,业务系统500将处理结果消息发送至推送队列120。然后当消息推送模块300监听到推送队列120当中的处理结果消息时,根据该处理结果消息查找对应的订单信息,并根据该订单信息执行回调操作,将处理结果消息回调至外部接入系统400当中,同时取消消息推送模块200中的定时配送任务。
40.上述实施例二描述了本技术中异步通信推送模型的理想工作状态,也是最主要的工作方式。但是通信链路不可能一直畅通,如果发生堵塞等意外情况,还需要一些紧急处理
措施。
41.实施例三、
42.在实施例一的基础上,本实施例提出了一种能够处理延迟场景的实施例,在该实施例中,具体的工作过程如下:
43.消息受理模块200收到来自外部接入系统400的业务请求,先对接收到的信息进行校验,然后消息受理模块200根据业务请求的类型,将消息发送至相应的分发队列110当中。同时,消息受理模块200调用消息推送模块300的下单接口生成订单,然后收到来自消息推送模块300的返回值:受理结果。消息推送模块200在收到下单请求后,启动定时配送任务。
44.业务系统500监听或者订阅分发队列110,当订单配送时间结束后,此时仍然没有接收到处理结果消息,则消息推送模块300根据订单信息,将预置的结果消息推送至外部接入系统400,完成订单配送。当处理结果消息延迟到达推送队列120中的时候,消息推送模块300将处理结果消息进行存储,以等待外部接入系统400的下次查询使用。
45.实施例三描述了本技术异步通信推送模型在出现延迟情况的处理方式。在某些极端情况下,可能出现消息的丢失。具体参照实施例四。
46.实施例四、
47.本技术的实施例四提供了一种消息丢失情况下的工作场景。
48.消息受理模块200收到来自外部接入系统400的业务请求,先对接收到的信息进行校验,然后消息受理模块200根据业务请求的类型,将消息发送至相应的分发队列110当中。同时,消息受理模块200调用消息推送模块300的下单接口生成订单,然后收到来自消息推送模块300的返回值:受理结果。消息推送模块200在收到下单请求后,启动定时配送任务。
49.业务系统500监听或者订阅分发队列110,当订单配送时间结束后,此时仍然没有接收到处理结果消息,则消息推送模块300根据订单信息,将预置的结果消息推送至外部接入系统400,完成订单配送。
50.上述实施例描述了本技术中异步通信推送模型的结构,与其几种基本的工作状态,这种结构利用消息中间件,实现了业务系统与异步通信推送模型的解耦合,能够增加整个异步通信推送模型的可拓展性与易集成性,同时在业务数据流的基础上,利用订单任务进行驱动,增强了通信过程的可靠性,可以减少异常情况的发生。用户在使用本系统的时候,能够更简便的进行操作,无需为现有系统中可能发生的异常情况进行担心。
51.可以理解到的是,实施例一中描述的异步通信推送模型,可以以计算机程序的形式进行实现,只要该模块能够实现上述异步通信推送模块的功能,则都可以理解为本技术描述的范围之内。
52.本技术又一实施例提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器在执行计算机程序时,能够实现上述实施例二到四当中任意一种描述的方法。
53.具体地,处理器可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
54.具体地,处理器通过总线与存储器连接,总线可包括一通路,以用于传送信息。总
线可以是pci总线或eisa总线等。总线可以分为地址总线、数据总线、控制总线等。
55.存储器可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
56.可选的,存储器用于存储执行本技术方案的计算机程序的代码,并由处理器来控制执行。处理器用于执行存储器中存储的应用程序代码,以实现图1所示实施例提供的异步通信推送模型的动作。
57.以上所描述的装置实施例仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
58.以上所描述的装置实施例仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
59.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些结构、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
60.以上是对本技术的较佳实施进行了具体说明,但本技术并不局限于上述实施方式,熟悉本领域的技术人员在不违背本技术精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1