The present application discloses a method and system for transmitting messages, which comprises the following steps: receiving a message sent by a client; establishing a key-value pair according to the content of the message; and routing a message according to the key of the key-value pair. By adopting the scheme of the invention, the cluster mode of the subscription/publishing server is realized, the concurrent processing capability of the publish/subscribe server is improved, and the server can be dynamically expanded and the scalability is better in the cluster mode.
【技术实现步骤摘要】
一种传输消息的方法和系统
本申请涉及一种传输消息的方法和系统,属于计算机
技术介绍
发布/订阅消息系统如今已经广泛应用于多种情况下的传输消息中,在一个发布/订阅消息系统中,发布者和订阅者都不是直接和对方联系,而是通过一个中间代理来转发消息。在这种情况下,发布者无需知道任何关于订阅者的信息,而订阅者只需要关注它感兴趣的主题就可以了,无需知道是哪个具体的客户端在给它发布消息。通过中间代理来转发消息,实现了发布者和订阅者的解耦。不过这种系统也存在一些缺陷,在这种传统的发布/订阅消息系统中,中间代理(比如服务器)通常只能单节点运行,而不能支持集群模式,这意味着在这样的系统中,客户端(也就是发布者和订阅者)的连接数量是有限的,消息并发的数量也不能太高,无法动态扩容,在这方面需要改进。
技术实现思路
本申请提供一种传输消息的方法和系统,用以解决目前传统的发布/订阅消息系统的服务器不能集群,难以支持高并发量消息的问题。所述方法包括如下步骤:接收用户端发送的消息;根据消息的内容建立键值对;根据所述键值对中的键,进行消息路由。对应的,本申请还提供一种传输消息系统,所述系统包括:一种传输消息系统,其特征在于,包括:服务器,接收来自用户端的消息,并根据消息的内容建立键值对,根据所述键值对中的键,通过消息代理客户端调用消息代理装置。和消息代理装置,接收来自消息代理客户端的调用指令,进行消息路由。通过采用本专利技术的方案,实现多个服务器利用消息代理装置对消息进行订阅/发布,也就是实现了服务器的集群模式,提高了发布/订阅服务器的并发处理能力,在集群模式下可以动态扩容,扩展性更好 ...
【技术保护点】
1.一种传输消息的方法,其特征在于,包括如下步骤:接收用户端发送的消息;根据消息的内容建立键值对;调用消息代理,根据所述键值对中的键,进行消息路由。
【技术特征摘要】
1.一种传输消息的方法,其特征在于,包括如下步骤:接收用户端发送的消息;根据消息的内容建立键值对;调用消息代理,根据所述键值对中的键,进行消息路由。2.如权利要求1所述的一种传输消息的方法,其特征在于,所述消息的内容包括:用户端连接标识、用户需要订阅或发布的主题和用户需要发布的内容。3.如权利要求2所述的一种传输消息的方法,其特征在于,所述键值对包括主题——用户端连接标识键值对,所述键值对中以用户需要订阅的主题作为键,以所述用户端连接标识组成的队列作为值。4.如权利要求3所述的一种传输消息的方法,其特征在于,所述调用消息代理,根据所述键值对中的键,进行消息路由,具体包括:以所述用户需要发布的主题作为消息代理客户端的频道参数,以用户需要发布的内容作为消息代理客户端的消息参数,进行发布;以所述键值对中的键作为消息代理客户端的频道参数,进行订阅;以消息代理客户端接收到的频道参数作为主题,对主题——连接键值对进行查询,获取用户端连接标识队列。5.如权利要求1所述的一种传输消息的方法,其特征在于,所述调用消息代理进行消息路由,还包括:多个所述消息代理所组成的集群中的各个节点之间进行消息广播。6.一种传输消息系统,其特征在于,包括:服务器,接收来自用户端的消息,并根据消息的内容建立键值对,根据所述...
【专利技术属性】
技术研发人员:熊雄,许荣涛,郑侃,
申请(专利权)人:北京极智感科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。