一种实现服务器扩展的系统及方法

文档序号:7887502阅读:163来源:国知局
专利名称:一种实现服务器扩展的系统及方法
技术领域
本发明涉及计算机通信领域,尤其涉及一种实现服务器扩展的系统及方法。
背景技术
众所周知,在客户端和服务器通信中,XMPP提供了基本即时通讯anstant Messenger,即IM)服务,其中,XMPP为可扩展通讯和表示协议,其可用于服务类实时通讯、 表示和需求,响应服务中的XML数据元流式传输;XML为可扩展标记语言,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。对基于IM的系统来说,为了满足更多用户的需求,就需要为客户端提供更多的服务,也即对应用服务器进行扩展。传统实现服务器扩展的架构是采用直接集成的方式,将更多的服务直接集成到一个应用服务器中,但这种扩展服务器的架构的开发成本高,开发过程复杂,而且直接集成的服务对于客户端也不易实现。

发明内容
针对上述技术问题,本发明的目的在于提供一种实现服务器扩展的系统及方法, 其基于XMPP实现服务器的扩展,即实现服务器更多的功能迭代,使服务器端的集成、部署及客户端的集成更加简单。为达到上述目的,本发明是通过以下技术方案来实现的一种实现服务器扩展的系统,所述系统包括控制单元和扩展单元;所述控制单元用于通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;所述扩展单元与控制单元连接,用于通过IM服务器同步功能服务器的信息、对功能服务器进行负载均衡,并向客户端下发功能服务器的地址和端口。特别的,所述控制单元包括注册单元和心跳检测单元;所述注册单元用于完成功能服务器及IM服务器向控制服务器的注册;所述心跳检测单元用于对功能服务器及IM 服务器进行心跳检测,并将心跳检测的信息传入控制服务器。特别的,所述控制单元还包括信息同步单元和第一地址下发单元;所述信息同步单元与心跳检测单元及注册单元连接,用于将功能服务器的信息同步到IM服务器;所述第一地址下发单元与信息同步单元连接,用于通过控制服务器向客户端下发IM服务器的端口和地址。特别的,所述扩展单元包括负载均衡单元及第二地址下发单元;所述负载均衡单元用于通过IM服务器对功能服务器进行负载均衡;所述第二地址下发单元与负载均衡单元连接,用于通过IM服务器向客户端下发功能服务器的端口和地址。特别的,所述扩展单元还包括发现单元;所述发现单元与负载单元连接,用于根据服务发现协议查询能够为客户端提供服务的功能服务器;其中,所述服务发现协议提供了在网络里面发现服务器的机制。特别的,所述功能服务器可以为语音对讲服务器,也可以为媒体服务器。
本发明还公开了一种实现服务器扩展的方法,所述方法基于XMPP实现服务器的扩展,具体包括如下步骤A、控制单元通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;B、扩展单元通过IM服务器同步功能服务器的信息、对功能服务器进行负载均衡, 并向客户端下发功能服务器的地址和端口。特别的,所述步骤A具体包括Al、注册单元完成功能服务器及IM服务器向控制服务器的注册;A2、心跳检测单元对功能服务器及IM服务器进行心跳检测,并将心跳检测的信息传入控制服务器。A3、信息同步单元将功能服务器的信息同步到IM服务器;A4、第一地址下发单元通过控制服务器向客户端下发IM服务器的端口和地址。特别的,所述步骤B具体包括Bi、发现单元根据服务发现协议查询能够为客户端提供服务的功能服务器;B2、负载均衡单元通过IM服务器对功能服务器进行负载均衡;B3、第二地址下发单元通过IM服务器向客户端下发功能服务器的端口和地址。本发明的有益效果为,所述一种实现服务器扩展的系统及方法,基于XMPP实现服务器的扩展,通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;通过IM服务器同步功能服务器的信息,并对功能服务器进行负载均衡,同时,向客户端下发功能服务器的地址和端口。本发明实现了服务器更多的功能迭代, 使服务器端的集成、部署及客户端的集成更加简单,降低了开发成本。


下面根据附图和实施例对本发明作进一步详细说明。图1为本发明实现服务器扩展的系统框图;图2为本发明实现服务器扩展的方法流程图。
具体实施例方式下面结合附图和实施例对本发明作进一步说明。请参照图1所示,图1为本发明实现服务器扩展的系统框图。本实施例中,以功能服务器为语音对讲服务器为例。一种实现服务器扩展的系统, 基于XMPP实现服务器的扩展,包括控制单元和扩展单元;所述控制单元包括注册单元、 心跳检测单元、信息同步单元及第一地址下发单元;所述扩展单元包括负载均衡单元、第二地址下发单元及发现单元。所述注册单元用于完成语音对讲服务器及IM服务器向控制服务器的注册。语音对讲服务器及IM服务器都需要向控制服务器进行注册,同时,控制服务器会对语音对讲服务器及IM服务器的注册信息进行存储。所述心跳检测单元用于对语音对讲服务器及IM服务器进行心跳检测,并将心跳检测的信息传入控制服务器。其中,所述心跳检测主要是在服务端和客户端之间进行通讯时,每隔一段时间会检测和主站连接是否正常;客户端每5分钟发一个心跳检测数据帧,月艮务端接收到数据帧表示通过,否则表示客户端断开,抛出异常。所述信息同步单元用于将语音对讲服务器的信息同步到IM服务器。语音对讲服务器的信息同步到IM服务器后,IM服务器可以根据客户端对语音对讲服务器的请求,向客户端发送对应的语音对讲服务器的地址和端口。所述第一地址下发单元与信息同步单元连接,用于通过控制服务器向客户端下发 IM服务器的端口和地址。在客户端通过配置端口和地址,连接控制服务器,控制服务器根据客户端发送的服务请求数据,向客户端下发IM服务器的端口和地址。所述发现单元用于根据服务发现协议查询能够为客户端提供服务的语音对讲服务器;其中,所述服务发现协议提供了在网络里面发现服务器的机制。所述负载均衡单元与发现单元连接,用于通过IM服务器对语音对讲服务器进行负载均衡。在IM服务器同步语音对讲服务器的信息后,IM服务器语音对讲服务器进行负载均衡。其中,负载均衡,又称为负载分担,是将负载(工作任务)进行平衡、分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。所述第二地址下发单元与负载均衡单元连接,用于通过IM服务器向客户端下发语音对讲服务器的端口和地址。在控制服务器向客户端下发IM服务器的端口和地址后,客户端实现与IM服务器之间的数据通信;在IM服务器在收到客户端发送的语音对讲请求数据后,将向客户端发送语音对讲服务器的端口和地址,从而实现语音对讲功能。请参照图2所示,图2为本发明实现服务器扩展的方法流程图。本实施例中,以功能服务器为媒体服务器为例。一种实现服务器扩展的方法,所述方法基于XMPP实现服务器的扩展,具体包括如下步骤步骤101、注册单元完成媒体服务器及IM服务器向控制服务器的注册。媒体服务器及IM服务器都需要向控制服务器进行注册,同时,控制服务器会对媒体服务器及IM服务器的注册信息进行存储。步骤102、心跳检测单元对媒体服务器及IM服务器进行心跳检测,并将心跳检测的信息传入控制服务器。其中,所述心跳检测主要是在服务端和客户端之间进行通讯时,每隔一段时间会检测和主站连接是否正常;客户端每5分钟发一个心跳检测数据帧,服务端接收到数据帧表示通过,否则表示客户端断开,抛出异常。步骤103、信息同步单元将媒体服务器的信息同步到IM服务器。媒体服务器的信息同步到IM服务器后,IM服务器可以根据客户端对媒体服务器的请求,向客户端发送对应的媒体服务器的地址和端口。步骤104、第一地址下发单元通过控制服务器向客户端下发IM服务器的端口和地址。在客户端通过配置端口和地址,连接控制服务器,控制服务器根据客户端发送的服务请求数据,向客户端下发IM服务器的端口和地址。步骤105、发现单元根据服务发现协议查询能够为客户端提供服务的媒体服务器; 其中,所述服务发现协议提供了在网络里面发现服务器的机制。步骤106、负载均衡单元通过IM服务器对媒体服务器进行负载均衡。在IM服务器同步媒体服务器的信息后,IM服务器媒体服务器进行负载均衡。其中,负载均衡,又称为负载分担,是将负载(工作任务)进行平衡、分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。步骤107、第二地址下发单元通过IM服务器向客户端下发媒体服务器的端口和地址。在控制服务器向客户端下发IM服务器的端口和地址后,客户端实现与IM服务器之间的数据通信;在IM服务器在收到客户端发送的语音对讲请求数据后,将向客户端发送媒体服务器的端口和地址,从而实现媒体功能。以功能服务器为媒体服务器为例,基于本发明的技术方案,客户端实现媒体功能的具体工作过程如下1)启动控制服务器、IM服务器和媒体服务器。2)媒体服务器通过配置的端口和地址,连接到控制服务器。3) IM服务器通过配置的端口和地址,连接到控制服务器,控制服务器将所有媒体服务器信息同步到IM服务器,由IM服务器来进行负载均衡。4)客户端通过配置端口和地址,连接到控制服务器,控制服务器对IM服务器集群进行负载均衡,返回一个IM服务器地址和端口。5)客户端连接IM服务器,执行登录过程,此时,IM服务器对媒体服务器进行负载均衡,返回某个媒体服务器地址和端口。6)客户端都登录成功后,就可以发送媒体信息,并通过消息来通知对方客户端进行获取并下载,从而实现了媒体功能。所述本发明的技术方案,通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;通过IM服务器同步功能服务器的信息,并对功能服务器进行负载均衡,同时,向客户端下发功能服务器如媒体服务器或语音对讲服务器的地址和端口,客户端与媒体服务器或语音对讲服务器连通后,实现媒体功能或语音对讲功能。本发明利用XMPP本身的协议扩展,来实现功能服务器已有的功能,完全能实现向上兼容;通过IM服务器实现功能服务器的负载均衡和隐藏;而且实现了服务器更多的功能迭代,使服务器端的集成、部署及客户端的集成更加简单,降低了开发成本。上述仅为本发明的较佳实施例及所运用技术原理,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围内。
权利要求
1.一种实现服务器扩展的系统,其特征在于,所述系统包括控制单元和扩展单元;所述控制单元用于通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;所述扩展单元与控制单元连接,用于通过IM服务器同步功能服务器的信息、对功能服务器进行负载均衡,并向客户端下发功能服务器的地址和端口。
2.根据权利要求1所述的实现服务器扩展的系统,其特征在于,所述控制单元包括注册单元和心跳检测单元;所述注册单元用于完成功能服务器及IM服务器向控制服务器的注册;所述心跳检测单元用于对功能服务器及IM服务器进行心跳检测,并将心跳检测的信息传入控制服务器。
3.根据权利要求2所述的实现服务器扩展的系统,其特征在于,所述控制单元还包括 信息同步单元和第一地址下发单元;所述信息同步单元与心跳检测单元及注册单元连接, 用于将功能服务器的信息同步到IM服务器;所述第一地址下发单元与信息同步单元连接, 用于通过控制服务器向客户端下发IM服务器的端口和地址。
4.根据权利要求3所述的实现服务器扩展的系统,其特征在于,所述扩展单元包括负载均衡单元及第二地址下发单元;所述负载均衡单元用于通过IM服务器对功能服务器进行负载均衡;所述第二地址下发单元与负载均衡单元连接,用于通过IM服务器向客户端下发功能服务器的端口和地址。
5.根据权利要求4所述的实现服务器扩展的系统,其特征在于,所述扩展单元还包括 发现单元;所述发现单元与负载单元连接,用于根据服务发现协议查询能够为客户端提供服务的功能服务器;其中,所述服务发现协议提供了在网络里面发现服务器的机制。
6.根据权利要求1至5之一所述的实现服务器扩展的方法,其特征在于,所述功能服务器可以为语音对讲服务器,也可以为媒体服务器。
7.一种实现服务器扩展的方法,其特征在于,所述方法基于XMPP实现服务器的扩展, 具体包括如下步骤A、控制单元通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;B、扩展单元通过IM服务器同步功能服务器的信息、对功能服务器进行负载均衡,并向客户端下发功能服务器的地址和端口。
8.根据权利要求7所述的实现服务器扩展的方法,其特征在于,所述步骤A具体包括Al、注册单元完成功能服务器及IM服务器向控制服务器的注册;A2、心跳检测单元对功能服务器及IM服务器进行心跳检测,并将心跳检测的信息传入控制服务器。A3、信息同步单元将功能服务器的信息同步到IM服务器;A4、第一地址下发单元通过控制服务器向客户端下发IM服务器的端口和地址。
9.根据权利要求8所述的实现服务器扩展的方法,其特征在于,所述步骤B具体包括Bi、发现单元根据服务发现协议查询能够为客户端提供服务的功能服务器;B2、负载均衡单元通过IM服务器对功能服务器进行负载均衡;B3、第二地址下发单元通过IM服务器向客户端下发功能服务器的端口和地址。
全文摘要
本发明公开一种实现服务器扩展的系统,基于XMPP实现服务器的扩展,包括控制单元和扩展单元;所述控制单元用于通过控制服务器获取功能服务器及IM服务器的相关信息,并将功能服务器的信息同步到IM服务器;所述扩展单元与控制单元连接,用于通过IM服务器同步功能服务器的信息,对功能服务器进行负载均衡,并向客户端下发功能服务器的地址和端口。本发明利用XMPP本身的协议扩展,实现功能服务器已有的功能,完全能实现向上兼容;不仅实现了服务器更多的功能迭代,使服务器端的集成、部署及客户端的集成更加简单,而且通过IM服务器实现了对隐藏。
文档编号H04L29/08GK102571799SQ20121001406
公开日2012年7月11日 申请日期2012年1月17日 优先权日2012年1月17日
发明者周聪伟 申请人:深圳市乐唯科技开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1