The invention discloses a method and apparatus for sending and receiving messages, including the message sending method: sending the first message to the target receiver, and other local asynchronous processing services; detection of the first message is successfully sent; in response to sending the first message fails, the first message in the message queue. Peel will send and receive messages with the specific business of asynchronous processing, and the realization of the preservation of the failure message, can record failed to send the message, to avoid message loss or business interruption data to data rollback.
【技术实现步骤摘要】
本专利技术属于互联网领域,具体地说,涉及一种消息发送、接收方法和装置。
技术介绍
程序A与程序B进行异步通信时,目前通过消息队列服务(MessageQueueService,MQServer)来完成,但是当程序A向MQServer发送消息失败时,或者B处理消息失败时,A就得不到B的响应消息,也就无法得到所需要的数据。主要表现为:1、程序A发送消息失败,而消息未保存,业务需要回滚或者重新根据业务需求开发重试逻辑2、程序B接收消息后处理失败,无法及时监控和重试,失败后无法自动处理或者需要重新开发重试逻辑。3、MQServer问题或网络问题造成消息丢失,程序A发送成功,程序B未收到消息。这种数据没有保存,无法自动处理,也很难被发现。
技术实现思路
有鉴于此,本专利技术实施例提供了一种消息发送、接收方法和装置,用以解决现有技术中消息发送和接收没有被记录而在消息发送或接收失败时难以恢复的技术问题。为了解决上述技术问题,本专利技术公开了一种消息发送方法,包括:发送第一消息至目标接收器,并异步处理本地其他服务;检测所述第一消息是否被成功发送;响应于所述第一消息发送失败时,将所述第一消息记录在消息队列中。为了解决上述技术问题,本专利技术还公开了一种消息接收方法,包括:接收来自发送器的第一消息;对所述第一消息进行处理,检测对所述第一消息的处理是否成功;响应于对所述第一消息处理失败时,将所述第一消息记录在消息队列中。为了解决上述技术问题,本专利技术还公开了一种消息发送装置,包括:第一消息发送模块,用于发送第一消息至目标接收器,并异步处理本地其他服务;第一状态检测模块,用于检测所 ...
【技术保护点】
一种消息发送方法,其特征在于,包括:发送第一消息至目标接收器,并异步处理本地其他服务;检测所述第一消息是否被成功发送;响应于所述第一消息发送失败时,将所述第一消息记录在消息队列中。
【技术特征摘要】
1.一种消息发送方法,其特征在于,包括:发送第一消息至目标接收器,并异步处理本地其他服务;检测所述第一消息是否被成功发送;响应于所述第一消息发送失败时,将所述第一消息记录在消息队列中。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:周期性的重试发送所述第一消息,直到所述第一消息发送成功。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收所述目标接收器返回的第二消息,所述第二消息包括处理所述第一消息而得到的结果数据。4.一种消息接收方法,其特征在于,包括:接收来自发送器的第一消息;对所述第一消息进行处理,检测对所述第一消息的处理是否成功;响应于对所述第一消息处理失败时,将所述第一消息记录在消息队列中。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:周期性的重试处理所述第一消息,直到所述第一消息处理成功。6.根据权利要求4所述的方法,其特征在于,所述方法还包括:发送第二消息至所述发送器,所述第二消息包括处理所述第一消息而得到的结果数据;检测所述第二消息是否被成功发送;响应于所述第二消息发送失败时,将所述第二消息记录在消息队列中。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:周期性的重试发送所述第二消息,直到所述第二消息发送成功。8.一种消息发送装置,其特征在于,包括:第一消息发送模块,用于发送第一消息至目标接收器,并异步处理本地
\t其他服务;第一状态检测模块,用于检测所述第一消息是否被成功发送;第一消息记录模块,用于响应于所述第一消息发送失败时,将所述第一消息记录在消息队列中。9.根据权利要求8所述的装置,其特征在于,所述装置还包括:第一重试发送模块,用于周期性的重试发送所述第一消息,直到所述第一消息发送成功。10.根据权利要求...
【专利技术属性】
技术研发人员:刘永华,王孝庆,
申请(专利权)人:乐视云计算有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。