专利名称:一种实现大型即时通信的方法及系统的利记博彩app
技术领域:
本发明涉及通信及计算机技术领域,尤其涉及一种实现大型即时通信的方 法及系统。
背景技术:
随着即时通信技术的发展,即时通信客户端用户不断增长,为满足不断增 长的需求,需要建立稳定、可靠的大型即时通信系统。现有方法中,组建大型
即时通信系统时,使用负栽均衡(LoadBalance)设备,由LoadBalance设备将 客户端的连接请求分配到由其管理的后台提供服务的接入服务器上。当客户端 通过客户端域名服务器(DNS, Domain Name Server)获得接入服务器的网络 协议(IP, IntemetProtocol)地址时,LoadBalance设备返回一个IP地址。当客 户端通过该IP地址请求登录即时通信系统时,LoadBalance设备根据一定的策 8^&客户端的连接请求指定到一台接入服务器上,这样,客户端通过指定的这 台接入服务器获得即时通信服务。
采用这种方法,系统的稳定性和容量完全依赖于LoadBalance设备,若 LoadBalance设备出现故障,所有用户的即时通信服务都会受到影响。
现有技术中,也可采用登录服务器分配接入服务器的IP地址的方式。当 客户端登录即时通信系统时,通过客户端DNS获得登录服务器返回的接入服 务器的多个IP地址,尝试连接登录,直到登录成功。登录成功后,客户端固 定的从登录成功的接入服务器上获得服务。
采用上述这种方式,登录服务器管理所有的接入服务器,登录服务器的性 能和稳定性同样成为系统稳定运行的瓶颈,若登录服务器出现故障,则所有客 户端不能正常登录服务器;若对登录服务器采用集群的方式,可以改善系统的
性能,增加稳定性。但是,采用集群的方式,同时增大了运行成本。
发明内容
本发明提供一种实现大型即时通信的方法及系统,用以解决现有技术中存 在的负栽均衡设备或登录服务器故障导致系统性能不稳定,以及客户端接入不 可靠的问题。
本发明提供以下技术方案 一种实现大型即时通信的方法,包括如下步骤 获取即时通信系统中M入服务器的接入信息;
所述即时通信系统中的域名服务器DNS根据所述接入信息将可接入用户 的接入服务器的信息提供给客户端;
所述客户端根据所述接入服务器的信息选择接入服务器接入即时通信系统。
较佳的,监控各接入服务器,并且在监控到接入服务器的负荷超过预定的 阈值或者存在故障时,标识该接入服务器不可接入用户。
所述各接入服务器通过设置监控端口状态标识该接入服务器是否可接入 用户。
所述DNS向客户端返回接入服务器的信息前,进一步根据各接入服务器 的负荷进行排序,并将排序后的接入服务器的信息提供给客户端。 所述客户端优先选择负荷较轻的接入服务器进行连接。 较佳的,所述DNS进一步将负载均衡设备管理的接入服务器的信息提供 给客户端。
客户端优先选择负栽均衡设备管理的接入服务器以外的接入服务器进行 连接。
所述DNS收到客户端DNS请求可接入用户的接入服务器信息时,将所述 信息返回给客户端DNS后,客户端DNS将所述信息提供给客户端。
一种接入服务器,包括 接入单元,用于提供用户接入服务;
监控单元,用于监控接入单元的负荷信息以及该接入服务器的系统是否出 现故障,并根据监控结果在接入信息中标识该接入服务器是否可接入用户。
较佳的,所述监控单元进一步在所述接入信息中标识该接入服务器的负荷 信息。
一种即时通信系统DNS,包括
接收单元,用于获取接入服务器的接入信息;
发送单元,用于根据所述接入信息将可接入用户的接入服务器的信息提供 给客户端。
其中,还包括
排序单元,用于根据所述接入信息中的负荷信息对可接入用户的接入服务 器进行排序,并将排序后的可接入用户的接入服务器信息输出给发送单元。 一种通信系统,包括
第一接入服务器,用于为接入该接入服务器的用户提供即时通信服务,监 控该接入服务器的负荷信息和系统是否出现故障,并根据监控结果在接入信息 中标识该接入服务器是否可接入用户;
即时通信系统域名服务器DNS,与第一接入服务器连接,用于获取各第一 接入服务器的接入信息,并根据接入信息确定可接入用户的所有第一接入服务 器;
客户端DNS,用于从所述即时通信系统DNS获取可接入用户的所有第一 接入服务器的信息;
客户端,与客户端DNS和接入服务器连接,用于,A^户端DNS获得的可 接入用户的接入服务器的信息中选择接入服务器接入即时通信系统。
进一步,
所述接入服务器在所述接入信息中标识该接入服务器的负荷信息;以及
所述即时通信系统DNS将根据所述负荷信息进行排序后的可接入用户的 接入服务器信息发送给客户端DNS。 较佳的,还包括
第二接入服务器,用于为接入该接入服务器的用户提供即时通信服务; 负载均衡设备,用于管理第二接入服务器,并将客户端申请的即时通信服 务分配到第二接入服务器上。 本发明有益效果如下
本发明对接入服务器的负荷等信息进行监控后,将可接入用户的接入服务 器根据负荷进行排序后返回给客户端,客户端优先选择负荷较轻的接入服务器 登录,不仅提高了客户端接入的可靠性,而且使得登录接入服务器的客户端数 量较均衡;当在系统中增加负载均衡设备及其管理的第二接入服务器后,即时 在第一接入服务器都不能提供服务时,客户端也可通过负载均衡设备管理的接 入服务器登录到即时通信系统。
采用即时通信系统DNS对第一接入服务器进行管理,避免了负栽均衡设 备或登录服务器故障导致的系统性能不稳定。
图1为本发明实施例一中的系统结构图2为本发明实施例一中监控单元的处理流程图3为本发明实施例一中客户端登录即时通信系统的处理流程图4为本发明实施例二中的系统结构图5为本发明实施例二中客户端登录即时通信系统的处理流程图。
具体实施例方式
为了解决采用现有技术组建的大型即时通信系统性能不稳定和接入不可 靠的问题,本发明对接入服务器的负荷信息进行监控,并将可接入用户的接入
服务器的信息提供给客户端,客户端从中选择负荷较轻的接入服务器接入即时 通信系统。
实施例一
参阅图1所示,本实施例的通信系统包括第一接入服务器110、即时通信 系统DNS120、客户端DNS130和客户端140。
第一接入服务器110包括接入单元1101、监控单元1102。所述接入单元 1101用于提供客户端140接入服务。所述监控单元1102监控接入单元1101的 负荷信息以及该接入服务器是否出现故障,当该接入服务器系统工作正常,负 荷未超过预定的阈值时,监控单元1102通过控制监控端口的状态标识该接入 服务器是否可接入用户;以及在该接入服务器可接入用户时标识该接入服务器 的负荷信息。
即时通信系统DNS120包括接收单元1201、排序单元1202、发送单元1203。 所述接收单元1201用于获取第一接入服务器110的接入信息,检测到第一接 入服务器IIO可接入用户时,获取可接入用户的第一接入服务器IIO的负荷信 息。排序单元1202用于根据所述负荷信息将可接入用户的第一接入服务器110 信息进行排序传送给发送单元1203。发送单元1203将接收到的所述排序后的 可接入用户的第一接入服务器110的信息返回给客户端DNS130。
客户端DNS130,用于定时从即时通信系统DNS120获取可接入用户的第 一接入服务器IIO的信息;对客户端请求的服务进行服务解析,并根据解析结 果,将可接入用户的第一接入服务器IIO的信息返回给客户端140。
客户端140,用于申请即时通信服务,并选择所述可接入用户的第一接入 服务器IIO接入即时通信系统。
当在即时通信系统DNS120的接收单元1201中设置定时获取第一接入服 务器110的接入信息的时间长度后,接收单元1201将根据设置的时间长度, 自动扫描接入服务器的监控端口状态。在实施过程中,可根据具体情况进行设 置,如设置为1分钟,这样可加快可接入用户的第一接入服务器110的IP地 址列表的更新以及使得登录第一接入服务器110的用户数量较平均,每台接入
服务器负荷较均衡。
参阅图2所示,接入服务器的监控单元的处理过程如下
步骤201、监控接入服务器的负荷信息,取当前接入该接入服务器的客户 端数量、流量值、CPU占用率等数据。
步骤202、将取到的上述数据与系统设定的各数据的阈值进行比较,如果 其中任一个数据超过对应的阈值,判定该接入服务器为不可接入用户后,执行 步骤205;如果没有一个数据超过对应的阈值,则执行步骤203。
步骤203、判断接入服务程序工作是否正常,如果出现异常,则执行步骤 205;如果工作正常,则执行步骤204。
步骤204、标识该接入服务器可接入用户,将接入服务器的监控端口设置 为打开状态。
步骤205、标识该接入服务器不可接入用户,将接入服务器的监控端口设 置为关闭状态。
参阅图3所示,客户端登录即时通信系统的处理过程如下
步骤301、即时通信系统DNS根据设置的定时对接入服务器的监控端口进 行检测,如果检测到接入服务器的监控端口为打开状态,则记录该接入服务器 的IP地址及负荷信息;当检测完成后,根据记录的负荷信息将接入服务器进 行排序后,生成可接入用户的接入服务器的IP地址列表。
步骤302、客户端DNS给即时通信系统DNS发送索取可接入用户的接入 服务器的IP地址列表消息的请求。
步骤303、即时通信系统DNS将可接入用户的接入服务器的IP地址列表 返回绍^客户端DNS。
步骤304、客户端准备登录即时通信系统时,给客户端DNS发送域名地址 解析的登录请求。
步骤305、客户端DNS对接收到的登录请求进行服务解析后,将可接入用
户的接入服务器的IP地址列表返回给请求登录的客户端。
步骤306、客户端接收到接入服务器的IP地址列表后,选择列表中负荷较 轻的接入服务器进行登录。
步骤307、监控到接入服务器的负荷超过阈值或接入服务程序存在故障, 关闭该接入服务器的监控端口 。
步骤308、按照设定的定时长度,即时通信系统DNS对接入服务器的监控 端口进行检测时,如果检测到接入服务器的监控端口已关闭,则该接入服务器 不可接入用户;对所有接入服务器的监控端口检测完成后,更新可用接入服务 器的IP地址列表。
步骤309、经过一个定时周期后,客户端DNS请求即时通信系统DNS返 回可用接入服务器的IP地址列表。
步骤310、即时通信系统DNS将更新后的可用接入服务器的IP地址列表 返回给客户端DNS。
采用上述的方法,即时通信系统DNS定时检测接入服务器是否可接入用 户,提高了客户端DNS请求到的接入服务器的IP地址列表的可用性,保证了 客户端登录时可靠接入。同时,由于即时通信系统DNS为高可用系统,避免 了 一台即时通信系统DNS出故障时对系统稳定性的影响。
实施例二
参阅图4所示,本实施例的通信系统在图1的1^出上增加负载均衡设备150 和第二接入服务器160。第二接入服务器160,用于为接入该接入服务器的客 户端140提供即时通信服务;负载均衡设备150,用于管理第二接入服务器160, 并将客户端140申请的即时通信服务分配到第二接入服务器160上。
采用该系统时,在即时通信系统DNS 120返回给客户端DNS 130的可接入 用户的接入服务器的信息中预配置负载均衡设备150的信息,当客户端140不 能登录到第一接入服务器IIO上时,客户端140根据可接入用户的接入服务器 信息中配置的负载均衡设备的信息进行登录,负载均衡设备150将客户端140
的连接请求分配到其管理的第二接入服务器160上。
参阅图5所示,客户端登录即时通信系统的处理过程如下
步骤501、客户端给客户端DNS发送域名地址解析的登录请求。
步骤502、客户端DNS对客户端发送的登录请求进行域名解析后,给客户
端返回可接入用户的第一接入服务器的IP地址列表及负载均衡设备的IP地址。 步骤503、客户端根据收到的第一接入服务器的IP地址列表,选择列表中
负荷较轻的接入服务器进行登录。
步骤504、当第一接入服务器的负荷超过阈值或接入服务程序存在故障时,
将该接入服务器的监控端口关闭。
当第一接入服务器需要维护时,也可直接将监控端口设置为关闭状态,这
样,可以不再接入新的用户,完成接入该接入服务器上的用户的即时通信服务
后,实现该接入服务器平滑地停止工作。
步骤505、即时通信系统DNS定时对第一接入服务器的监控端口进行检
溯'J,检测到所有第一接入服务器的监控端口都为关闭状态,所有第一接入服务
器不可接入用户。
步骤506、即时通信系统DNS接收到客户端DNS请求返回可接入用户的 接入服务器信息时,只将预先配置的负载均衡设备的IP地址返回给客户端 DNS。
步骤507、当所有第一接入服务器都不可接入用户时,客户端登录到负载 均衡设备管理的第二接入服务器上。
采用实施例二的方法,当客户端使用DNS返回的第一接入服务器IP地址 进行登陆都失败时,客户端会自动选择使用负载均衡设备的IP地址进行尝试 登陆。
在实施例二中,当第一接入服务器都不可接入用户时,客户端登录到均衡 设备管理的第二接入服务器上,从而保证了客户端正常登录即时通信系统,提 高了系统的性能以及接入系统的可靠性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发 明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求 及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种实现大型即时通信的方法,其特征在于,包括如下步骤获取即时通信系统中各接入服务器的接入信息;所述即时通信系统中的域名服务器DNS根据所述接入信息将可接入用户的接入服务器的信息提供给客户端;所述客户端根据所述接入服务器的信息选择接入服务器接入即时通信系统。
2、 如权利要求1所述的方法,其特征在于,监控M入服务器,并且在 监控到接入服务器的负荷超过预定的阈值或者存在故障时,标识该接入服务器 不可接入用户。
3、 如权利要求2所述的方法,其特征在于,所述备接入服务器通过设置 监控端口状态标识该接入服务器是否可接入用户。
4、 如权利要求l所述的方法,其特征在于,所述DNS向客户端返回接入 服务器的信息前,进一步根据备接入服务器的负荷进行排序,并将排序后的接 入服务器的信息提供给客户端。
5、 如权利要求4所述的方法,其特征在于,所述客户端优先选择负荷较 轻的接入服务器进行连接。
6、 如权利要求1至5任一项所述的方法,其特征在于,所述DNS进一步将负栽均衡设备管理的接入服务器的信息提供给客户端。
7、 如权利要求6所述的方法,其特征在于,客户端优先选择负栽均衡设备管理的接入服务器以外的接入服务器进行连接。
8、 如权利要求7所述的方法,其特征在于,所述DNS收到客户端DNS 请求可接入用户的接入服务器信息时,将所述信息返回给客户端DNS后,客户端DNS将所述信息提供给客户端。
9、 一种接入服务器,其特征在于,包括 接入单元,用于提供用户接入服务; 监控单元,用于监控接入单元的负荷信息以及该接入服务器的系统是否出 现故障,并根据监控结果在接入信息中标识该接入服务器是否可接入用户。
10、 如权利要求9所迷的接入服务器,其特征在于,所述监控单元进一步 在所述接入信息中标识该接入服务器的负荷信息。
11、 一种即时通信系统DNS,其特征在于,包括 接收单元,用于获取接入服务器的接入信息;发送单元,用于根据所述接入信息将可接入用户的接入服务器的信息提供 给客户端。
12、 如权利要求11所述的DNS,其特征在于,还包括排序单元,用于根据所述接入信息中的负荷信息对可接入用户的接入服务 器进行排序,并将排序后的可接入用户的接入服务器信息输出给发送单元。
13、 一种通信系统,其特征在于,包括第一接入服务器,用于为接入该接入服务器的用户提供即时通信服务,监 控该接入服务器的负荷信息和系统是否出现故障,并根据监控结果在接入信息 中标识该接入服务器是否可接入用户;即时通信系统域名服务器DNS,与第一接入服务器连接,用于获取各第一 接入服务器的接入信息,并根据接入信息确定可接入用户的所有第一接入服务 器;客户端DNS,用于从所述即时通信系统DNS获取可接入用户的所有第一 接入服务器的信息;客户端,与客户端DNS和接入服务器连接,用于A^户端DNS获得的可 接入用户的接入服务器的信息中选择接入服务器接入即时通信系统。
14、 如权利要求13所述的系统,其特征在于,所述接入服务器进一步在所述接入信息中标识该接入服务器的负荷信息;以及所述即时通信系统DNS将根据所述负荷信息进行排序后的可接入用户的 接入服务器信息发送给客户端DNS。
15、如权利要求13或14所述的系统,其特征在于,还包括 第二接入服务器,用于为接入该接入服务器的用户提供即时通信服务; 负栽均衡设备,用于管理第二接入服务器,并将客户端申请的即时通信服务分配到第二接入服务器上。
全文摘要
本发明公开了一种实现大型即时通信的方法,用于解决现有大型即时通信系统性能不稳定,以及客户端接入不可靠的问题。本发明方法包括获取即时通信系统中各接入服务器的接入信息;所述即时通信系统中的域名服务器DNS根据所述接入信息将可接入用户的接入服务器的信息提供给客户端;所述客户端根据所述接入服务器的信息选择接入服务器接入即时通信系统。本发明同时公开了一种实现大型即时通信的系统。
文档编号H04L29/12GK101102288SQ20061009871
公开日2008年1月9日 申请日期2006年7月6日 优先权日2006年7月6日
发明者莫建祥 申请人:阿里巴巴公司