一种消息处理方法及系统技术方案

技术编号:16506264 阅读:81 留言:0更新日期:2017-11-04 21:18
本发明专利技术提供了一种消息处理方法及系统,方法首先将发送端待发送的消息进行转换,得到通用消息,然后将通用消息发送至接收端,最后根据通用消息中的消息类型,选用消息处理链上的消息处理器对消息内容进行处理。本发明专利技术将不同类型的消息均转换为通用消息,无需为每个消息都设计一个完整处理过程,这样避免了功能重复,从而减少了代码冗余;另外,在有新的消息类型出现时,可以在消息处理链上添加消息处理器来处理此类型的通用消息,从而具有很好的扩展性。

【技术实现步骤摘要】
一种消息处理方法及系统
本专利技术属于计算机领域,尤其涉及一种消息处理方法及系统。
技术介绍
消息队列(MessageQueue,MQ)是一种应用程序对应用程序的通信方法。由于消息队列是通过消息通信,提供了用于应用集成的松耦合的连接方法,所以在系统架构中使用比较频繁。在系统实际运行过程中,往往存在着多个人开发多个消息的情况,各个消息处理存在许多通用的地方,另一个方面,消息处理缺乏统一的规划,后期的维护比较困难。如图1所示,在现有技术的消息处理方法中,需要为每个消息(消息A和消息B)都设计一个完整处理过程,如消息获取、数据验证、记录日志等步骤,这样导致重复功能多、代码冗余,同时,消息处理流程不受控制,差异大,维护性差,另外,新增消息需要实现多个功能,扩展性不好。
技术实现思路
(一)要解决的技术问题本专利技术的目的在于,提供一种消息处理方法及系统,能对不同类型的消息进行统一处理,并且具有很好的扩展性。(二)技术方案本专利技术提供一种消息处理方法,用于对一发送端向一接收端发送的消息进行处理,方法包括:S1,将发送端待发送的消息进行转换,得到一通用消息,其中,通用消息包括待发送消息的消息内容和消息类型;S2,将通用消息发送至接收端;S3,根据通用消息中的消息类型,对通用消息中的消息内容进行处理。进一步,步骤S1还包括:将通用消息进行序列化处理,得到通用消息的序列化数据,并将该序列化数据储存于一消息队列中。进一步,步骤S2包括:将所述消息队列中的序列化数据发送至接收端,并对序列化数据进行反序列化处理,得到对应的通用消息。进一步,步骤S3之前还包括:对通用消息进行数据验证和日志记录。进一步,步骤S3包括:根据所述通用消息中的消息类型,选用与所述消息类型对应的消息处理器,以对所述通用消息中的消息内容进行处理。进一步,多个对应于不同消息类型的消息处理器线性存储于一消息处理链上,通过遍历所述消息处理链上的消息处理器,获取与所述消息类型对应的消息处理器。进一步,通用消息包括还包括冗余信息,步骤S3中,若不存在消息类型对应的消息处理器,则根据通用消息的冗余信息对通用消息进行备份。进一步,在对所述通用消息进行备份后,在消息处理链上添加通用消息中消息类型所对应的消息处理器。本专利技术还提供一种消息处理系统,用于对一发送端向一接收端发送的消息进行处理,系统包括:消息转换单元,用于将发送端待发送的消息进行转换,得到一通用消息,其中,通用消息包括待发送消息的消息内容及消息类型;消息发送单元,用于将通用消息发送至接收端;消息处理单元,用于根据通用消息中的消息类型,对通用消息中的消息内容进行处理。进一步,消息转换单元将通用消息进行序列化处理,得到通用消息的序列化数据,并将该序列化数据储存于一消息队列中。进一步,消息发送单元将消息队列中的序列化数据发送至接收端,并对所述序列化数据进行反序列化处理,得到对应的通用消息。进一步,系统包括:数据验证单元,用于对所述通用消息进行数据验证;日志记录单元,用于对所述通用消息进行日志记录。进一步,消息处理单元根据所述通用消息中的消息类型,选用与所述消息类型对应的消息处理器,以对所述通用消息中的消息内容进行处理。进一步,多个对应于不同消息类型的消息处理器线性存储于一消息处理链上,通过遍历所述消息处理链上的消息处理器,获取与所述消息类型对应的消息处理器。进一步,通用消息包括还包括冗余信息,所述消息处理单元在不存在所述消息类型对应的消息处理器时,根据所述通用消息的冗余信息对所述通用消息进行备份。进一步,消息处理单元在对通用消息进行备份后,在消息处理链上添加所述通用消息中消息类型所对应的消息处理器。(三)有益效果本专利技术将不同类型的消息均转换为通用消息,无需为每个消息都设计一个完整处理过程,这样避免了功能重复,从而减少了代码冗余;另外,在有新的消息类型出现时,可以在消息处理链上添加消息处理器来处理此类型的通用消息,从而具有很好的扩展性。附图说明图1是现有技术的消息处理方法的流程图。图2是本专利技术提供的消息处理方法的流程图。图3是本专利技术提供的消息处理系统的结构示意图。图4是本专利技术实施例通过的消息处理的流程示意图。图5是本专利技术实施例中消息转换的示意图。图6是本专利技术实施例中序列化数据转换为通用消息的示意图。图7是本明实施例中处理通用消息的流程图。具体实施方式本专利技术提供一种消息处理方法及系统,方法首先将发送端待发送的消息进行转换,得到通用消息,然后将通用消息发送至接收端,最后根据通用消息中的消息类型,选用消息处理链上的消息处理器对消息内容进行处理。本专利技术将不同类型的消息均转换为通用消息,无需为每个消息都设计一个完整处理过程,这样避免了功能重复,从而减少了代码冗余;另外,在有新的消息类型出现时,可以在消息处理链上添加消息处理器来处理此类型的通用消息,从而具有很好的扩展性。图2是本专利技术提供的消息处理方法的流程图,如图2所示,消息处理方法包括:S1,将发送端待发送的消息进行转换,得到一通用消息,其中,通用消息包括待发送消息的消息内容和消息类型;其中,发送端和接收端是通过消息的方式进行通信,这里的发送端和接收端可以是客户端和服务器。在消息进行转换时,可以创建一个通用消息对象,该对象中具有多个成员,即消息内容和消息类型。根据本专利技术的一种实施方式,为了便于消息的存储,步骤S1还包括:将通用消息进行序列化处理,得到所述通用消息的序列化数据,其中,序列化数据可以是JSON数据、XML数据及二进制数据等,并将该序列化数据储存于一消息队列中,本专利技术将通用消息以序列化数据的形式存储于消息队列,是因为消息需要在异构系统之间传递并相互理解,消息队列能够提供消息缓存能力,并且,在步骤S2中消息发送时,先将消息队列中的序列化数据发送至接收端,并在接收端中对序列化数据进行反序列化处理,得到对应的通用消息。S2,将通用消息发送至接收端。接着,对通用消息进行数据验证和日志记录,数据验证和日志记录是为了保证消息的完整性和有效性,并能够分析消息处理各种特征。S3,根据通用消息中的消息类型,对通用消息中的消息内容进行处理。具体地,根据通用消息中的消息类型,选用与消息类型对应的消息处理器,以对通用消息中的消息内容进行处理,其中,消息处理器是指框架中一种抽象的逻辑单元,用于解析消息和处理消息,特定类型的消息处理器指定处理特定类型的消息,消息处理器可以通过继承抽象处理器的JAVA子类实现。根据本专利技术的一种实施方式,多个对应于不同消息类型的消息处理器线性存储于一消息处理链上,通过遍历消息处理链上的消息处理器,获取与消息类型对应的消息处理器,所述消息处理链可以通过责任链设计模式实现。根据本专利技术的一种实施方式,通用消息包括还包括冗余信息,其中,冗余信息可以是发送端IP、发送端名称、发送时间等,步骤S3中,若不存在消息类型对应的消息处理器,则根据通用消息的冗余信息对通用消息进行备份,备份是为了能够对未处理消息进行还原,从而重新处理。根据本专利技术的一种实施方式,在对通用消息进行备份后,在消息处理链上添加通用消息中消息类型所对应的消息处理器,这样只需通过添加消息处理器就可实现新类型消息的处理,从而具有很好的扩展性。图3是本专利技术提供的消息处理系统的结构示意图,如图3所示,系统100包括:消本文档来自技高网...
一种消息处理方法及系统

【技术保护点】
一种消息处理方法,用于对一发送端向一接收端发送的消息进行处理,其特征在于,方法包括:S1,将所述发送端待发送的消息进行转换,得到一通用消息,其中,所述通用消息包括所述待发送消息的消息内容和消息类型;S2,将所述通用消息发送至所述接收端;S3,根据所述通用消息中的消息类型,对所述通用消息中的消息内容进行处理。

【技术特征摘要】
2016.04.27 CN 20161026960641.一种消息处理方法,用于对一发送端向一接收端发送的消息进行处理,其特征在于,方法包括:S1,将所述发送端待发送的消息进行转换,得到一通用消息,其中,所述通用消息包括所述待发送消息的消息内容和消息类型;S2,将所述通用消息发送至所述接收端;S3,根据所述通用消息中的消息类型,对所述通用消息中的消息内容进行处理。2.根据权利要求1所述的消息处理方法,其特征在于,所述步骤S1还包括:将所述通用消息进行序列化处理,得到所述通用消息的序列化数据,并将该序列化数据储存于一消息队列中。3.根据权利要求2所述的消息处理方法,其特征在于,所述步骤S2包括:将所述消息队列中的序列化数据发送至所述接收端,并对所述序列化数据进行反序列化处理,得到对应的通用消息。4.根据权利要求1所述的消息处理方法,其特征在于,所述步骤S3之前还包括:对所述通用消息进行数据验证和日志记录。5.根据权利要求1所述的消息处理方法,其特征在于,所述步骤S3包括:根据所述通用消息中的消息类型,选用与所述消息类型对应的消息处理器,以对所述通用消息中的消息内容进行处理。6.根据权利要求5所述的消息处理方法,其特征在于,多个对应于不同消息类型的消息处理器线性存储于一消息处理链上,通过遍历所述消息处理链上的消息处理器,获取与所述消息类型对应的消息处理器。7.根据权利要求6所述的消息处理方法,其特征在于,所述通用消息包括还包括冗余信息,所述步骤S3中,若不存在所述消息类型对应的消息处理器,则根据所述通用消息的冗余信息对所述通用消息进行备份。8.根据权利要求7所述的消息处理方法,其特征在于,在对所述通用消息进行备份后,在所述消息处理链上添加所述通用消息中消息类型所对应的消息处理器...

【专利技术属性】
技术研发人员:刘希望
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

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

1