一种具备大规模负载能力的服务架构设计方法

文档序号:7743413阅读:247来源:国知局
专利名称:一种具备大规模负载能力的服务架构设计方法
技术领域
负载均衡服务架构支持网络服务器在大量并发访问时的数据流分配扩展工作。本 发明主要使用在计算机领域。
背景技术
随着计算机产业的快速发展,网络服务器成为各大网络公司的运作核心,网络服 务器在并发访问量或数据流量过大的情况下会出现无法承载信息流的状况,从而导致网络 服务器系统崩溃、数据流失等危险,对网络公司造成巨大的经济损失,怎样解决网络服务器 超负重运载时的服务器安全运作成为各大公司关注焦点。近年,越来越多的路由器、交换机、服务器等网络设备采用了负载均衡技术。目前 负载均衡技术按照不同的需求可分类为软/硬件负载均衡、本地/全局负载均衡、更高网 络层负载均衡,以及链路聚合技术。软/硬件负载均衡是指在一台或多台服务器相应的操作系统上安装软件或专门 的设备来实现负载均衡,软件负载均衡的优点是基于特定环境、配置简单、使用灵活、成本 低廉,可以满足一般的负载均衡需求,硬件负载设备由于专门的设备完成专门的任务,独立 于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量管理,可 达到最佳的负载均衡需求,不过成本昂贵。本地/全局负载均衡技术在其应用的地理结构上,分为本地负载均衡和全局负载 均衡。本地负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指在不同地理位 置、有不同网络结构的服务器群间做负载均衡。本地负载均衡能有效地解决数据流量过大、 网络负荷过重的问题,并且不需花费昂贵开支购置性能卓越的服务器,可充分利用现有设 备,避免服务器单点故障造成数据流量的损失。有灵活多样的均衡策略,可把数据流量合理 地分配给服务器群内的服务器,来共同负担。即使是再给现有服务器扩充升级,也只是简单 地增加一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。全局负载 均衡,主要用于在一个多区域拥有自己服务器的站点,为了使全球用户只以一个IP地址或 域名就能访问到离自己最近的服务器,从而获得最快的访问速度,也可用于子公司分散站 点分布广的大公司通过htranet (企业内部互联网)来达到资源统一合理分配的目的。更高网络层负载均衡,通常操作于网络的第四层或第七层。第四层负载均衡将一 个hternet上合法注册的IP地址,映射为多个内部服务器的IP地址,对每次TCP连接请 求动态使用其中一个内部IP地址,达到负载均衡的目的。第七层负载均衡控制应用层服务 的内容,提供了一种对访问流量的高层控制方式,适合对HTTP服务器群的应用。第七层负 载均衡技术通过检查流经的HTTP报头,根据报头内的信息来执行负载均衡任务。以上负载均衡技术从很大程度上解决了服务器负载均衡的问题,但是,技术上仍 旧存在一些瓶颈,大多数网络设备厂商所采用的方案是多个内网用户同时访问外网资源 时,网络设备可对多条出去的线路流量均衡分配,使多用户同时通畅的访问外网。然而,对 于另一种与此相对的情形,即多个外网用户通过互联网同时访问一个内网服务器或网关时,由于接入用户过多的并行访问,很可能会导致此服务器或网关与互联网之间的带宽矛 盾,出现多用户延迟、无法访问服务器甚至服务器或网关系统崩溃的现象。鉴于以上问题,本发明提出一套在网络服务器或网关大规模部署过程中多台服务 器同时提供服务的设备。该方案实现外部用户访问服务器或网关时,在主服务器发生故障 或脱机的情况下,将网络通行重新指定给其他工作服务器,多台服务器可以同时提供服务, 任何一台服务器故障不影响整个系统的运行,客户端自动选择负载小的服务器进行整个平 台系统的运行工作,选择过程系统的自动完成提高了接入系统网关的灵活性和可伸缩性, 保证整个系统能够不间断,无阻碍的运行。专利

发明内容
本发明具备大规模负载能力的服务器架构设计以已有的网络结构为基础,采用IP 负载均衡技术和数据请求分配技术,来扩展网络接入设备和服务器的数据吞吐量,在主服 务器发生故障或脱机的情况下,将网络通行重新指定给其他工作服务器,多台服务器可以 同时提供服务,选择过程系统自动完成提高了接入系统网关的灵活性和可伸缩性。本发明 所提到的负载均衡具有有两方面的含义首先,大量的并发访问或数据流量分担到多台节 点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设 备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到 大幅度提高。负载服务构架原理图见附图1。本发明一种具备大规模负载能力的服务架构设计方法的核心技术是网络负载平 衡技术。该技术允许传入的请求传播到最多达32台的服务器,即可以使用最多32台服务 器共同分担对外的网络请求服务。网络负载平衡技术保证即使是在负载很重的情况下它 们也能作出快速响应。网络负载平衡对外只须提供一个IP地址(或域名),如果网络负载 平衡中的一台或几台服务器不可用时,服务不会中断。网络负载平衡自动检测到服务器不 可用时,能够迅速在剩余的服务器中重新指派客户机通讯。此保护措施能够帮助系统为关 键的业务程序提供不中断的服务。可以根据网络访问量的增多来增加网络负载平衡服务器 的数量。网络负载平衡可在普通的计算机上实现。同时,网络负载平衡有助于改善服务器 性能和可伸缩性,以满足不断增长的基于hternet客户端的需求,保证整个系统能够不间 断,无阻碍的运行。网络负载平衡可以让客户端用一个逻辑hternet名称和虚拟IP地址 (又称群集IP地址)访问群集,同时保留每台计算机各自的名称。本发明的详细设计内容如下,负载均衡系统工作流程图见附图2 (一)服务器数据同步1、服务器数据划分1)各服务器独立的参数(唯一标识、网卡地址),各个服务器私有;2)各服务器共用的服务参数,主服务器上设定,各个服务器同步;3)各服务器不同的服务参数,包括地址设定,地址池,端口等,主服务器上设定,各 个服务器同步;4)客户端基本信息数据,包括客户信息,各个服务器的同步时间。主服务器修改, 各个服务器同步;5)客户端实时信息数据,包括在线情况,地址,操作时间,从服务器通知主服务器 修改,无须同步;
6)服务器操作日志,各个服务器私有,如果有审计服务器则发送到审计服务器 上;7)客户端审计日志,各个服务器私有,如果有审计服务器则发送到审计服务器上。2、服务器数据同步从服务器保持和主服务器之间的网络常连接,从服务器主动创建到主服务器的连 接,连接成功之后,主服务器将内容直接发送到从服务器,循环进行如下操作1)扫描客户端基本信息,发现有更新则发送给从服务器,发送成功后,记录更新时 间,避免多次发送;2)扫描前述客户端内容,发现有修改则发送到从服务器;3)查询从服务器的情况,包括负载情况,并推送其他服务器负载情况(替代心跳 包);4)发送管理员的其他实时命令;5)从服务器需要修改客户端实时信息的时候,将需要修改的信息,通过UDP包发 送给主服务器,主服务器收到后修改状态到实时数据库中。( 二)客户端连接机制及负载原理1、认证部分 客户端第一次认证连接前,设定连接服务器的地址和认证端口,地址和端口是任 意一个服务器对外服务地址和端口即可。客户端后继认证前,优先选择上次成功连接的服务器地址和端口进行认证,不成 功则随机选择一个服务器和认证端口进行认证。客户端认证成功后,获取到各个服务器对外服务地址和端口号码,供下次连接使 用。并且此时获取到各个服务器的负载情况(客户端数量)。2、创建通道部分客户端根据认证包得到的负载情况,对服务器地址和通道端口进行排序,然后依 次进行通道创建。通道由于异常情况断开后,将重试3次,如果还不成功,换下一个通道进 行尝试。总计尝试次数不超过10次,如果超过则断开连接,需要重新认证。3、服务器异常处理服务器将如下情况,视为异常,并通过可选手段通知管理员处理或者自行处理。1)负载服务器发现主服务器无法连接,尝试一定次数后(可设定);2)主服务器发现注册的某台负载服务器没有连接,尝试一定次数后(可设定);3)服务器自身守护程序发现异常情况,如磁盘空间不足,内存不足,CPU长时间占 用过高。发现这些异常情况后,可选手段包括守护程序自行重启服务程序;守护程序自 动重启计算机;守护程序向目标计算机发送特殊网络包,使其硬件重启;通过声音报警;通 过控制台报警。本发明一种具备大规模能力的服务架构设计方法的负载维护工作如下。1、服务器数据备份连接任意一个服务器,可以选择备份所有数据到一组文件,供恢复使用。备份出来 的数据包括所有服务器设定和客户端信息数据,不包括各种日志数据。若客户端数量较多,文件将会比较大。2、从服务器数据灾备当某个从服务器遇到问题需要恢复数据或者更换,遵循如下流程1)重新制作服务器,恢复出厂状态;2)根据前述流程,设定服务器唯一标识(和需要替换的服务器一致)和各网卡地 址;3)设置服务器为从服务器,并指定正确的主服务器地址;4)放置到网络中,将自动从主服务器同步数据后,开始工作。3、主服务器数据灾备当主服务器遇到问题需要恢复数据或者更换,遵循如下流程1)重新制作服务器,恢复出厂状态;2)根据前述流程,设定服务器唯一标识(和需要替换的服务器一致)和各网卡地 址;3)设置服务器为主服务器;4)从任意一个正常工作的从服务器中备份数据;5)从上一步备份的数据中,恢复数据;6)放置到网络中,开始正常工作。


图1大规模负载能力服务架构原理图;图2负载均衡系统工作流程图。
具体实施例方式1、服务器出厂设定和唯一标识服务器出厂默认均是独立工作服务器,每个服务器默认有一个唯一标识号码(与 硬件相关,每个服务器都不一样)和默认的内网地址。服务器一般具有四个网卡,分别作用如下ethO 内网网卡,连接内部网络(必选)ethl 外网网卡,连接外部网络(必选)eth2 审计网卡,连接审计服务器(可选)eth3 心跳网卡,连接主从服务器(可选)在使用前,需要设定服务器的唯一标识供实施参考,并且作为服务器在实施项目 中的唯一标识,供后继备份、恢复、管理数据使用。2、主服务器设定使用管理工具连接服务器的默认内网地址,设置如下参数1)服务器类型主服务器;2)各个网口是否启用以及相关的ip地址3、从服务器设定使用管理工具连接服务器的默认内网地址,设置如下参数
1)服务器类型从服务器2)主服务器地址填写主服务器的ip地址(四个地址中任意一个,但是应保证能 访问,如果有条件,选择顺序为心跳网卡、审计网卡、内网网卡、外网网卡)3)各个网口是否启用以及相关的ip地址4、客户端系统服务设定连接主服务器控制台,设定服务的关键参数,包括1)各个服务器的地址池(每个服务器需要不同的地址池,应该为B类网段)2)各个服务器的内部服务端口,默认都是50021,在此基础上,TCP认证端口是 50021,UDP 认证端口是 50021+1,UDP 通道端口是 50021。3)各个服务器的外部服务地址和端口,需要和对外防火墙设定是一致的。4)各个服务器的连接权重(默认为相同的权重,如果有特殊需求,可以设定)
权利要求
1.一种具备大规模负载能力的服务架构设计方法,其特征在于多台服务器同时提供 服务,从服务器在主服务器大量并发访问或数据流量过大的情况下分担承载信息流,从服 务器主动创建和主服务器的同步连接。在已有的网络结构基础上,采用IP负载均衡技术和数据请求分配技术,该技术扩展网 络接入设备并控制服务器的数据吞吐量,当主服务器发生故障或脱机的情况下,将网络通 行重新指定给其他工作服务器。多台服务器具有同时提供服务的特性,系统自动完成选择 服务器工作的过程,该特征提高了接入系统设备的灵活性和可伸缩性。有自动检测服务器数据流,判断服务器的实时数据流的承载量,主从服务器自动完成 同步数据。负载服务器同时具有异常处理的特性。
2.如权利要求1所述的一种具备大规模负载能力的服务架构设计方法,其特征在于 该服务架构设计方法的核心技术是网络负载平衡技术。自动检测到主服务器不可用时,迅 速在剩余的服务器中重新指派有效替补通讯的从服务器。
3.如权利要求1所述的一种具备大规模负载能力的服务架构设计方法,其特征在于 建立客户端连接服务器机制,设定连接服务器的地址和认证端口,根据认证包进行通道建 设。
4.如权利要求1和2所述的一种具备大规模负载能力的服务架构设计方法,其特征在 于服务器同步数据,主服务器上设定参数。设定的参数包括各服务器独立的参数(唯一 标识、网卡地址);各服务器共用的服务参数;各服务器不同的服务参数;客户端基本信息 数据;客户端实时信息数据;服务器操作日志;客户端审计日志。
5.如权利要求1和2所述的一种具备大规模负载能力的服务架构设计方法,其特征在 于从服务器主动创建与主服务器的连接,负载工作启动时,主服务器将数据包直接发送到 从服务器。
6.如权利要求5所述的一种具备大规模负载能力的服务架构设计方法,其特征在于 客户端第一次认证连接前,设定服务器的连接地址和认证端口 ;后继认证前,优先选择上次 成功连接的服务器地址和端口进行认证;认证成功后,获取到各个服务器对外服务地址和 端口号码,供下次连接使用。获取到各个服务器的负载情况(客户端数量)。
7.如权利要求6所述的一种具备大规模负载能力的服务架构设计方法,其特征在于 根据客户端认证包得到的负载情况,主从服务器创建通道依据服务器地址和通道端口的排 序结果。
全文摘要
本发明采用多台服务器同时运行,在大量并发访问或数据流量过大的情况下,解决无法承载信息流的状况,防止系统崩溃、数据流失等危险。本发明具备大规模负载能力的服务器架构设计以已有的网络结构为基础,采用IP负载均衡技术和数据请求分配技术,来扩展网络接入设备和服务器的数据吞吐量,在主服务器发生故障或脱机的情况下,将网络通行重新指定给其他工作服务器,多台服务器可以同时提供服务,系统自动完成选择服务器的过程,提供自动检测服务器数据流,判断服务器承载量以便迅速指派有效的替补服务器,提高了接入系统网关的灵活性和可伸缩性。
文档编号H04L12/56GK102075556SQ201010122299
公开日2011年5月25日 申请日期2010年3月11日 优先权日2009年11月19日
发明者喻波, 李志涛, 王志海, 顾飞 申请人:北京明朝万达科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1