欢迎来到天天文库
浏览记录
ID:13302079
大小:99.00 KB
页数:6页
时间:2018-07-21
《一种面向发布订阅系统的流量控制和消息缓存方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一种面向发布/订阅系统的流量控制和消息缓存方法1.技术领域本发明涉及一种面向发布/订阅系统的流量控制和消息缓存方法2.背景技术Internet技术的广泛应用和移动计算、网格计算以及普适计算平台的快速发展,要求分布式系统能够满足大规模、分散控制和动态改变的要求.这就要求系统的各参与者之间,采用一种具有动态性和松散耦合特性的灵活通信范型和交互机制.发布/订阅(Pub/Sub)通信范型与传统的通信范型(消息传递、RPC/RMI和共享空间)相比,具有异步、多点通信的特点,使通信的参与者在空间、时间和控制流上完全解耦,能够很好地满足大型分布式系统松散通信的需求。发布/订
2、阅系统是一种使分布式系统中的各参与者,能以发布/订阅的方式进行交互的中间件系统.在发布/订阅系统中,信息的生产者和消费者之间所交互的信息被称为事件.如图1所示,生产者将事件发送到发布/订阅系统服务器;消费者则向发布/订阅系统服务器发出一个订阅条件,表示对系统中的哪些事件感兴趣,如果不再感兴趣,也可以取消订阅;而发布/订阅系统服务器则保证将生产者发布的事件及时、可靠地传送给所有对之感兴趣的消费者.信息的生产者称为发布者(publisher),信息的消费者称为订阅者(subscriber),发布者和订阅者统称为客户端.匹配算法(matcher)负责高效地找到与给定
3、的事件相匹配的所有订阅条件;而路由算法(router)则负责选择适当的路径,将一个事件从发布者传送到订阅者.发布/订阅系统的流量控制是一种负载控制机制,目的是在提供良好的服务的前提下,保持系统的强壮性。流量控制机制对发布/订阅系统的服务质量,系统性能是至关重要的。当前的流量控制机制都只进行了流量控制,当无法正常提供服务的时候,简单的进行消息抛弃。本发明在流量控制机制中增加了消息缓存的功能,通过配置参数在设定的环境下可以将消息缓存到辅存上,释放消息占用的内存,从而减少了消息的抛弃,并降低了系统的资源,提高了系统的服务能力。3.发明内容针对现有发布/订阅系统所存在
4、的问题和不足,本发明的目的是提供一种面向发布/订阅系统的流量控制和消息缓存方法。本发明是这样实现的:一种面向发布/订阅系统的流量控制和消息缓存方法,包括以下步骤:1)对发布/订阅系统服务器(以下简称服务器)参数进行设置,通过消息占用资源的情况对消息进行分类。2)服务器通过一个线程采集系统资源的使用情况,根据系统资源的使用情况采取不同的策略。若系统资源处于设定的正常的范围,不进行操作,若系统资源降低到设定的正常范围值以下,进入步骤3,若内存资源降低到设定的正常范围值以下,进入步骤4,当资源降低到设定的,进入步骤5。3)对发送消息客户端进行流量控制。具体实现是服务
5、器向发送消息客户端发送流量控制数据报,客户端根据数据报的控制信息,降低往服务器发送消息的速度,从而减少服务器的压力。4)对发送消息客户端进行流量控制并缓存消息,具体实现是采用步骤2的同时,并将内存中的消息写入缓存,释放内存,从而减少服务器端内存的使用量。5)直接抛弃消息。具体实现是通过配置服务器抛弃消息策略方法,可抛弃最新的消息或者最早的消息,或者特定类型的消息。其中步骤1包括以下子步骤:1.1对系统参数进行设置,设定线程的采集频率,设定系统关心的主要资源及触发进入步骤3,4,5步骤的资源的阀值。1.2通过消息占用资源的情况对消息进行分类,并建立相对应索引并计
6、数,建立发送消息的客户的索引并计数。对步骤3而言,根据步骤2的不同情况进行不同的控制,可对导致资源的所有发送客户端或个别客户端进行流量控制,并可以根据资源缺乏的程度设定不同的流量控制子级别。服务器可以在不同的阶段采取不同的流量控制级别,但在一个时间段只采取一种程度的流量控制。步骤4是针对资源中的内存使用情况增加的控制机制,为避免服务器的崩溃,当内存不足时,一方面对发送消息客户端进行流量控制,一方面将服务器内存中的消息写入缓存,只在内存中保留标志位以及如果从缓存中取回消息的相关信息,释放消息所占用的内存资源。当保留消息的缓存相关的内存使用量大于或等于消息的内存使
7、用量时,不对该消息进行处理。当内存不足的同时,若CPU也严重不足,考虑到对消息缓存同样也会不同程度的占用CPU,此时减少缓存的速度。步骤5是当步骤3以及步骤4均不能降低服务器的资源的使用情况时,为避免服务器的崩溃而采取的手段。本步骤抛弃一定数量的消息,从而降低了系统资源的使用量。在步骤3,4,5中,服务器均运行设定的一个时间段,避免了在不同的步骤间进行切换。3.附图说明图1是发布/订阅系统的概念结构示意图图2是对发布/订阅系统流量控制的处理流程图4.具体实施方式针对现有发布/订阅系统所存在的问题和不足,本发明的目的是提供一种面向发布/订阅系统的流量控制和消息缓
8、存方法。为了使本发明的目的,技术方案和
此文档下载收益归作者所有