[发明专利]基于前端调度实现流量分配的方法、装置和系统在审
申请号: | 201410050242.1 | 申请日: | 2014-02-13 |
公开(公告)号: | CN104852934A | 公开(公告)日: | 2015-08-19 |
发明(设计)人: | 陈虓将;刘彦梅 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/801 |
代理公司: | 北京市清华源律师事务所 11441 | 代理人: | 沈泳;李赞坚 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 前端 调度 实现 流量 分配 方法 装置 系统 | ||
技术领域
本申请涉及服务器集群调度领域,具体涉及一种基于前端调度实现流量分配的方法和装置。本申请同时涉及一种基于前端调度的访问方法和装置,以及一种基于前端调度实现流量分配的系统。
背景技术
随着互联网的发展,网络上的各种应用层出不穷,客户端对网络应用的访问量呈爆炸式增长,尤其是各个网络的核心部分,其数据流量和计算强度都非常巨大。在这样的海量服务以及海量访问的大背景下,仅凭性能有限的单个服务器根本无法满足客户端的访问需求,于是出现了服务器集群的概念,即:后台服务器以集群的方式提供服务。
所谓集群,是指由一组相互独立、并且彼此互联的服务器组成一个系统,并将客户端访问请求分配给该系统内的所有服务器,即:让多台服务器联合起来提供服务,从而满足来自客户端的海量访问需求。通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术。
如上所述,在一个集群系统中,各台服务器各自分担部分流量,那么如何在完成同样功能的多个服务器之间实现合理的流量分配,避免出现一台服务器过忙、而别的服务器却未充分发挥处理能力的情况,就成了集群系统的一个主要问题。为了解决这一问题,负载均衡机制应运而生。负载均衡,就是通过某种算法或者策略将来自客户端的访问合理地分配到集群中的每一台服务器上。通过负载均衡技术,能够有效扩展服务器带宽和增加吞吐量,提高服务器响应速度;避免了网络关键部位出现单点失效,提高网络的灵活性和可用性。
目前在业界普遍使用的解决方案是采用LVS(Linux Virtual Server,Linux虚拟服务器)来实现负载均衡。LVS集群从结构上可分为两部分:LVS调度器和后端的实际服务器(real server)。LVS调度器是服务器集群系统的唯一入口点,后端的实际服务器分组提供相同的服务。当客户端请求到达时,LVS调度器根据设定的调度算法从分组中选出一台实际服务器,再将该请求转发到所选的服务器去执行。real server负责真正的提供各种应用服务,比如:Web、FTP、Mail等服务,real server的数量可以根据实际需求增加或者减少。
采用LVS实现负载均衡,存在如下缺陷:
1)无法对客户端和服务器需要建立长连接的应用提供良好的支持。LVS调度器是服务器集群的唯一入口点,实际服务器部署在调度器的后端,不能直接暴露在公网上,因此,客户端的每次请求都需要先经过LVS调度器,再由调度器将请求转发给后端的实际服务器。在一些需要客户端和服务器建立长连接的场景下,LVS调度器为一条连接维持的时长限制了长连接的时长。而且,LVS调度器本身是为短连接优化的,对海量长连接的处理能力存在瓶颈。
2)无法实现对客户端请求的按需分流。LVS前端调度器采用相同的策略对待后端的实际服务器,客户端请求到达哪台实际服务器是不确定的,即:LVS无法根据业务特性进行适配或者转发,因此无法做到按需引导流量,例如:将特定的客户端请求引导到升级后的若干台服务器,或者将不同版本的客户端请求引导到不同的服务器,这些LVS都无法实现。
3)服务器必须使用固定的监听端口。采用LVS做前端调度时,只能将客户端的请求转发给后端服务器的固定端口,不允许不同的服务器监听不同的端口。
4)部署复杂、成本高。由于LVS工作在TCP/IP协议的第四层,依据协议的特征进行转发,需要在内核的TCP/IP协议栈进行过滤筛选,因此,LVS前端调度器工作在内核层,需要单独编译内核并独立部署;同时,由于LVS前端调度器本身要求高可靠,所以前端调度器以集群的方式部署,增加了硬件成本和软件维护成本。
发明内容
本申请提供一种基于前端调度实现流量分配的方法和装置,以解决现有集群调度方式的上述的问题。本申请另外提供一种基于前端调度的访问方法和装置,以及一种基于前端调度实现流量分配的系统。
本申请提供一种基于前端调度实现流量分配的方法,包括:
接收来自客户端的获取目标服务器连接信息的请求;
从待选择的服务器中,采取定制的策略为所述客户端选择目标服务器;
将所选目标服务器连接信息返回给所述客户端。
可选的,所述目标服务器连接信息包括:所述目标服务器的IP地址,以及所述目标服务器与所述客户端通信所使用的端口号。
可选的,所述采取定制的策略为所述客户端选择目标服务器,包括:
根据所述请求中携带的功能信息选择实现所述功能的目标服务器;或者,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410050242.1/2.html,转载请声明来源钻瓜专利网。