CN104660707B - 一种基于地理位置的代理服务器均衡分配的方法 - Google Patents

一种基于地理位置的代理服务器均衡分配的方法 Download PDF

Info

Publication number
CN104660707B
CN104660707B CN201510103102.0A CN201510103102A CN104660707B CN 104660707 B CN104660707 B CN 104660707B CN 201510103102 A CN201510103102 A CN 201510103102A CN 104660707 B CN104660707 B CN 104660707B
Authority
CN
China
Prior art keywords
proxy server
client
weights
equilibrium distributor
equilibrium
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510103102.0A
Other languages
English (en)
Other versions
CN104660707A (zh
Inventor
陈武平
胡开荆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Wanpeng Digital Intelligence Technology Co ltd
Original Assignee
Zhejiang Wanpeng Education Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Wanpeng Education Technology Co Ltd filed Critical Zhejiang Wanpeng Education Technology Co Ltd
Priority to CN201510103102.0A priority Critical patent/CN104660707B/zh
Publication of CN104660707A publication Critical patent/CN104660707A/zh
Application granted granted Critical
Publication of CN104660707B publication Critical patent/CN104660707B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种基于地理位置的代理服务器均衡分配的方法。本发明步骤如下:(1)均衡分配器载入信息;(2)均衡分配器计算两个省份之间的距离值并保存;(3)代理服务器与均衡分配器建立连接,并告知均衡分配器其最大连接的客户端数量和IP列表IP1...IPn,1≤n,均衡分配器查询出该IP对应的信息并保存;(4)客户端与均衡分配器建立连接,并请求均衡分配器为其分配代理服务器;(5)均衡分配器获取客户端的IP并查询该IP对应的信息;(6)均衡分配器根据客户端IP计算每台代理服务器IP与该客户端IP的匹配权值;(7)衡分配器为每台代理服务器选取权值最大的IP;(8)按权值从大到小选取代理服务器集。本发明效率高性能好。

Description

一种基于地理位置的代理服务器均衡分配的方法
技术领域
本发明属于计算机分布式领域,涉及一种基于地理位置的代理服务器均衡分配的方法。
背景技术
在大型的网络服务系统中,客户端一般通过代理服务器连接到系统决策中心,为了提高客户端的响应速度和优化代理服务器资源的使用,众多代理服务器被分布在不同的地理位置,由系统统一管理。采用均衡分配技术实现代理服务器的负载均衡。
负载均衡从地理结构上分为两种:一种是本地负载均衡即对本地服务器群做负载均衡;另一种是全局负载均衡即对不同地理位置的服务器群做负载均衡。互联网产品的用户分散在不同地理位置,为了提供更好的服务质量,直接为用户提供服务的服务端也分布在不同的地理位置。由于全局负载能就近提供服务,有效解决网络拥堵问题,提高访问质量,因此全局负载均衡广泛应用于互联网产品中。
目前常见的全局负载均衡策略主要有基于DNS负载均衡、基于应用重定向。基于DNS负载均衡是在用户发出任何连接之前,先通过DNS请求获取到服务器的IP地址,向用户返回解析结果的过程中进行智能决策,给用户一个最佳的IP地址。由于DNS负载均衡采用的是简单的轮循算法,不能区分服务器之间的差异,不能反应服务器当前运行的状态,所以DNS服务器将请求平均的分配到后台服务器上,而不考虑每个服务器当前的负载情况。如果后台服务器的处理能力不同,最慢的服务器将成为系统的瓶颈,处理能力强的服务器不能得到充分的发挥;基于应用重定向是在负载均衡设备收到应用请求并选择最佳服务IP后,通过应用层协议将用户请求重定向到所选择的最佳服务IP,这种方式只适用于支持应用重定向的协议(如HTTP、MMS),且性能较差。
发明内容
本发明主要目的是针对现在技术的不足,提供一种基于地理位置的代理服务器均衡分配的方法。
本发明解决其技术问题所采用的技术方案包括如下具体步骤:
步骤(1)、均衡分配器载入所有IP所属的地理位置、运营商信息;
步骤(2)、均衡分配器载入各省份的经纬度,并计算出每两个省份之间的距离值,并保存,具体计算方法如下:
首先将A省的经纬度(lngOrg1,latOrg1)和B省的经纬度(lngOrg2,latOrg2)转化为弧度,得到A省的的弧度值(lng1,lat1)和B省的的弧度值(lng2,lat2);转化公式为Rad=Deg×Π/180,其中Deg表示经度或纬度度数,Rad表示经度或纬度对应的弧度值;
然后计算A省与B省的距离值D,
其中R为地球半径;
步骤(3)、代理服务器启动后与均衡分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接;代理服务器告知均衡分配器本代理服务器最大连接的客户端数量和本代理服务器的IP列表IP1...IPn,1≤n,均衡分配器为代理服务器告知的每个IP查询出该IP对应的地理位置、运营商信息并保存,代理服务器每秒通知均衡分配器本代理服务器当前连接的客户端数量CCN;
步骤(4)、客户端与均衡分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接,并请求均衡分配器为其分配代理服务器;
步骤(5)、均衡分配器根据客户端与均衡分配器建立的基于SOCKET(套接字)的TCP(传输控制协议)连接获取客户端的IP,根据客户端IP查询出该IP对应的地理位置、运营商信息;
步骤(6)、均衡分配器根据客户端IP,计算出每台代理服务器的每个IP与该客户端IP的匹配权值,具体权值计算如下:
①地理位置匹配权值:1)如客户端与代理服务器在同一个县,权值记为L1;2)如客户端与代理服务器在同一个市不同县,权值记为L2;3)如客户端与代理服务器在同一个省不同市,权值记为L3;4)如客户端与代理服务器在同一个国家不同省份,查询出客户端所在省份与代理服务器所在省份的距离值D,根据距离值D计算出权值记为L4,L4=99-D/100;5)如客户端与代理服务器在不同国家,权值记为L5;0≤L5<L4<L3<L2<L1
②运营商匹配权值:如果客户端与代理服务器IP所属运营商相同,权值记为C1,不同记为C2;0≤C2<C1
③计算客户端IP与代理服务器IP的匹配权值Weight,
Weight=Li×N+Cj(i=1,2,3,4,5;j=1,2);
其中,Li为地理位置匹配权值,Cj为运营商匹配权值,N为自然数;
步骤(7)、均衡分配器为每台代理服务器选取权值最大的IP,如果存在多个权值最大,则代理服务器的IP从多个最大权值中随机选取一个,作为本代理服务器为本客户端提供服务的IP;同时将权值相同的代理服务器放入一个代理服务器集PS,所有的代理服务器PS集按选取出来的权值从大到小排序;
步骤(8)、按权值从大到小选取代理服务器集PS,从代理服务器集PS中选取负载Load最小的代理服务器,当权值最大的代理服务器集中的代理服务器负载均满,则从权值第二大的代理服务器集中选负载最小的代理服务器;依次类推,直到所有的代理服务器负载均满;
代理服务器负载Load计算如下,Load=CCN/MCN,其中MCN表示代理服务器最大连接的客户端数量,CCN表示代理服务器当前连接的客户端数量。
本发明有益效果如下:
本发明中的地理位置精确到县,高效且性能好;让使用不同运营商网络的用户无需跨运营商传输网络数据,从而得到最佳的用户体验;让不同地理位置的用户与服务器之间的网络数据传输的距离最短,使得网络传输耗时最短;可区分出服务器硬件之间的差异,使得不同硬件的服务器都能得到充分利用。
具体实施方式
下面对本发明作进一步的说明。
一种基于地理位置的代理服务器均衡分配的方法,主要的组成部分是:客户端,用于向用户提供获取服务请求操作和处理请求返回的结果;代理服务器,用于接收客户端的请求,并向系统决策中心转发客户端的请求,将决策中心返回的结果发送给客户端;均衡分配器,用于均衡分配代理服务器。
本发明方法的具体步骤是:
步骤(1)、均衡分配器载入所有IP所属的地理位置、运营商信息;
步骤(2)、均衡分配器载入各省份的经纬度,并计算出每两个省份之间的距离值,并保存,具体计算方法如下:
首先将A省的经纬度(lngOrg1,latOrg1)和B省的经纬度(lngOrg2,latOrg2)转化为弧度,得到A省的的弧度值(lng1,lat1)和B省的的弧度值(lng2,lat2);转化公式为Rad=Deg×Π/180,其中Deg表示经度或纬度度数,Rad表示经度或纬度对应的弧度值;
然后计算A省与B省的距离值D,
其中R为地球半径;
步骤(3)、代理服务器启动后与均衡分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接;代理服务器告知均衡分配器本代理服务器最大连接的客户端数量和本代理服务器的IP列表IP1...IPn,1≤n,均衡分配器为代理服务器告知的每个IP查询出该IP对应的地理位置、运营商信息并保存,代理服务器每秒通知均衡分配器本代理服务器当前连接的客户端数量CCN;
步骤(4)、客户端与均衡分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接,并请求均衡分配器为其分配代理服务器;
步骤(5)、均衡分配器根据客户端与均衡分配器建立的基于SOCKET(套接字)的TCP(传输控制协议)连接获取客户端的IP,根据客户端IP查询出该IP对应的地理位置、运营商信息;
步骤(6)、均衡分配器根据客户端IP,计算出每台代理服务器的每个IP与该客户端IP的匹配权值,具体权值计算如下:
①地理位置匹配权值:1)如客户端与代理服务器在同一个县,权值记为L1;2)如客户端与代理服务器在同一个市不同县,权值记为L2;3)如客户端与代理服务器在同一个省不同市,权值记为L3;4)如客户端与代理服务器在同一个国家不同省份,查询出客户端所在省份与代理服务器所在省份的距离值D,根据距离值D计算出权值记为L4,L4=99-D/100;5)如客户端与代理服务器在不同国家,权值记为L5;0≤L5<L4<L3<L2<L1
②运营商匹配权值:如果客户端与代理服务器IP所属运营商相同,权值记为C1,不同记为C2;0≤C2<C1
③计算客户端IP与代理服务器IP的匹配权值Weight,
Weight=Li×N+Cj(i=1,2,3,4,5;j=1,2);
其中,Li为地理位置匹配权值,Cj为运营商匹配权值,N为自然数;
步骤(7)、均衡分配器为每台代理服务器选取权值最大的IP,如果存在多个权值最大,则代理服务器的IP从多个最大权值中随机选取一个,作为本代理服务器为本客户端提供服务的IP;同时将权值相同的代理服务器放入一个代理服务器集PS,所有的代理服务器PS集按选取出来的权值从大到小排序;
步骤(8)、按权值从大到小选取代理服务器集PS,从代理服务器集PS中选取负载Load最小的代理服务器,当权值最大的代理服务器集中的代理服务器负载均满,则从权值第二大的代理服务器集中选负载最小的代理服务器;依次类推,直到所有的代理服务器负载均满;
代理服务器负载Load计算如下,Load=CCN/MCN,其中MCN表示代理服务器最大连接的客户端数量,CCN表示代理服务器当前连接的客户端数量。
本发明提出了一种可根据用户的地理位置和用户使用的网络运营商类型来分配代理服务器的方案,可将客户端分配在与客户端有相同网络类型且与客户端所在地理位置相近的代理服务器上。

Claims (1)

1.一种基于地理位置的代理服务器均衡分配的方法,其特征在于包括如下步骤:
步骤(1)、均衡分配器载入所有IP所属的地理位置、运营商信息;
步骤(2)、均衡分配器载入各省份的经纬度,并计算出每两个省份之间的距离值,并保存,具体计算方法如下:
首先将A省的经纬度(lngOrg1,latOrg1)和B省的经纬度(lngOrg2,latOrg2)转化为弧度,得到A省的弧度值(lng1,lat1)和B省的弧度值(lng2,lat2);转化公式为Rad=Deg×Π/180,其中Deg表示经度或纬度度数,Rad表示经度或纬度对应的弧度值;
然后计算A省与B省的距离值D,
其中R为地球半径;
步骤(3)、代理服务器启动后与均衡分配器建立基于SOCKET的TCP连接;代理服务器告知均衡分配器本代理服务器最大连接的客户端数量和本代理服务器的IP列表IP1...IPn,1≤n,均衡分配器为代理服务器告知的每个IP查询出该IP对应的地理位置、运营商信息并保存,代理服务器每秒通知均衡分配器本代理服务器当前连接的客户端数量CCN;
步骤(4)、客户端与均衡分配器建立基于SOCKET的TCP连接,并请求均衡分配器为其分配代理服务器;
步骤(5)、均衡分配器根据客户端与均衡分配器建立的基于SOCKET的TCP连接获取客户端的IP,根据客户端IP查询出该IP对应的地理位置、运营商信息;
步骤(6)、均衡分配器根据客户端IP,计算出每台代理服务器的每个IP与该客户端IP的匹配权值,具体权值计算如下:
①地理位置匹配权值:1)如客户端与代理服务器在同一个县,权值记为L1;2)如客户端与代理服务器在同一个市不同县,权值记为L2;3)如客户端与代理服务器在同一个省不同市,权值记为L3;4)如客户端与代理服务器在同一个国家不同省份,查询出客户端所在省份与代理服务器所在省份的距离值D,根据距离值D计算出权值记为L4,L4=99-D/100;5)如客户端与代理服务器在不同国家,权值记为L5;0≤L5<L4<L3<L2<L1
②运营商匹配权值:如果客户端与代理服务器IP所属运营商相同,权值记为C1,不同记为C2;0≤C2<C1
③计算客户端IP与代理服务器IP的匹配权值Weight,
Weight=Li×N+Cj(i=1,2,3,4,5;j=1,2);
其中,Li为地理位置匹配权值,Cj为运营商匹配权值,N为自然数;
步骤(7)、均衡分配器为每台代理服务器选取权值最大的IP,如果存在多个权值最大,则代理服务器的IP从多个最大权值中随机选取一个,作为本代理服务器为本客户端提供服务的IP;同时将权值相同的代理服务器放入一个代理服务器集PS,所有的代理服务器PS集按选取出来的权值从大到小排序;
步骤(8)、按权值从大到小选取代理服务器集PS,从代理服务器集PS中选取负载Load最小的代理服务器,当权值最大的代理服务器集中的代理服务器负载均满,则从权值第二大的代理服务器集中选负载最小的代理服务器;依次类推,直到所有的代理服务器负载均满;
代理服务器负载Load计算如下,Load=CCN/MCN,其中MCN表示代理服务器最大连接的客户端数量,CCN表示代理服务器当前连接的客户端数量。
CN201510103102.0A 2015-03-09 2015-03-09 一种基于地理位置的代理服务器均衡分配的方法 Active CN104660707B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510103102.0A CN104660707B (zh) 2015-03-09 2015-03-09 一种基于地理位置的代理服务器均衡分配的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510103102.0A CN104660707B (zh) 2015-03-09 2015-03-09 一种基于地理位置的代理服务器均衡分配的方法

Publications (2)

Publication Number Publication Date
CN104660707A CN104660707A (zh) 2015-05-27
CN104660707B true CN104660707B (zh) 2018-06-05

Family

ID=53251394

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510103102.0A Active CN104660707B (zh) 2015-03-09 2015-03-09 一种基于地理位置的代理服务器均衡分配的方法

Country Status (1)

Country Link
CN (1) CN104660707B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104980340A (zh) * 2015-06-25 2015-10-14 走遍世界(北京)信息技术有限公司 服务器的切换方法及装置
CN110138872B (zh) * 2016-06-30 2022-02-25 上海智臻智能网络科技股份有限公司 一种用于网络代理的计算机可读介质
CN106331129A (zh) * 2016-08-30 2017-01-11 广州西麦科技股份有限公司 一种负载均衡装置及其实现负载均衡的方法
CN107087014B (zh) * 2017-01-24 2020-12-15 无锡英威腾电梯控制技术有限公司 一种负载均衡方法及其控制器
CN108111527A (zh) * 2017-12-29 2018-06-01 深圳市艾特智能科技有限公司 智能家居客户端访问请求处理方法、系统、存储介质及计算机设备
CN108366112A (zh) * 2018-02-06 2018-08-03 杭州朗和科技有限公司 客户端的数据传输方法及系统、介质和计算设备
CN109040343B (zh) * 2018-09-11 2021-07-23 达闼科技(北京)有限公司 域名解析方法、装置、计算机可读存储介质及电子设备
CN109327542B (zh) * 2018-11-19 2021-10-26 网易(杭州)网络有限公司 游戏业务访问响应方法、请求转发方法、连接方法、装置
CN109901927A (zh) * 2019-02-21 2019-06-18 国泰君安证券股份有限公司 智能化任务动态调度系统及其方法
CN109905472A (zh) * 2019-02-21 2019-06-18 上海富数科技有限公司 自适应网络代理系统及基于神经网络进行权值调整的方法
CN110381136B (zh) * 2019-07-19 2021-12-14 腾讯科技(深圳)有限公司 一种数据读取方法、终端、服务器及存储介质
CN115412738B (zh) * 2021-05-26 2023-09-08 广西三方大供应链技术服务有限公司 服务器的调度方法、装置及存储介质
CN113329081A (zh) * 2021-05-28 2021-08-31 深圳技术大学 一种区块链服务接入方法、装置及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101938504A (zh) * 2009-06-30 2011-01-05 深圳市融创天下科技发展有限公司 集群服务器智能调度的方法及系统
CN103188270A (zh) * 2013-04-11 2013-07-03 腾讯科技(深圳)有限公司 一种推荐服务器的接入ip地址的方法、装置和系统
CN103561049A (zh) * 2013-09-05 2014-02-05 乐视网信息技术(北京)股份有限公司 一种处理终端调度请求的方法、系统及装置
CN103685056A (zh) * 2014-01-14 2014-03-26 互联网域名系统北京市工程研究中心有限公司 负载均衡方法及其系统
CN103825837A (zh) * 2014-02-19 2014-05-28 上海视云网络科技有限公司 一种节点负载的分布式cdn全局调度的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080057483A (ko) * 2006-12-20 2008-06-25 삼성전자주식회사 서버, 클라이언트, 로드 밸런싱 시스템 및 그의 로드밸런싱 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101938504A (zh) * 2009-06-30 2011-01-05 深圳市融创天下科技发展有限公司 集群服务器智能调度的方法及系统
CN103188270A (zh) * 2013-04-11 2013-07-03 腾讯科技(深圳)有限公司 一种推荐服务器的接入ip地址的方法、装置和系统
CN103561049A (zh) * 2013-09-05 2014-02-05 乐视网信息技术(北京)股份有限公司 一种处理终端调度请求的方法、系统及装置
CN103685056A (zh) * 2014-01-14 2014-03-26 互联网域名系统北京市工程研究中心有限公司 负载均衡方法及其系统
CN103825837A (zh) * 2014-02-19 2014-05-28 上海视云网络科技有限公司 一种节点负载的分布式cdn全局调度的方法

Also Published As

Publication number Publication date
CN104660707A (zh) 2015-05-27

Similar Documents

Publication Publication Date Title
CN104660707B (zh) 一种基于地理位置的代理服务器均衡分配的方法
US11290418B2 (en) Hybrid content request routing system
JP4974888B2 (ja) 分散要求ルーティング
US11863417B2 (en) Routing mode and point-of-presence selection service
US10911527B2 (en) Load balancing with layered edge servers
US10091096B1 (en) Routing mode and point-of-presence selection service
US10033627B1 (en) Routing mode and point-of-presence selection service
CN103997526B (zh) 一种可扩展负载均衡系统和方法
US8078755B1 (en) Load balancing using IPv6 mobility features
CN107317879B (zh) 一种用户请求的分发方法及系统
CN103442030B (zh) 发送和处理业务请求信息的方法和系统以及客户端装置
CN101360042B (zh) 可运营p2p网络应用路由系统及其路由实现方法
CN104320487A (zh) 内容分发网络的http调度系统和方法
US20110282993A1 (en) Hierarchical load balancing
CN102918813A (zh) 用于数据负载均衡的设备和方法
CN102075445A (zh) 负载均衡方法及装置
US20100185455A1 (en) Dynamic web hosting and content delivery environment
US20090193146A1 (en) Utilizing Virtual Server Weight for Loadbalancing
CN107872423A (zh) 用于实现 cdn 调度的方法、设备和系统
CN101098308B (zh) 网络中节点负载分担的方法及系统
JP2023547880A (ja) バックアップネットワーク機能を提供するためのネットワークノードおよびネットワークノードにおける方法
US20130111068A1 (en) Creating an optimized distribution network for the efficient transfer of data between endpoints using crossover connections
CN103297337A (zh) 一种实现内容分发网络互联路由的方法及系统
US20130110999A1 (en) Creating an optimized distribution network for the efficient transfer of data between endpoints
CN116208614A (zh) 资源负载均衡方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 310013, 15 floor, electronic commerce building, 118 West Wen San Road, Hangzhou, Zhejiang.

Applicant after: ZHEJIANG WANPENG EDUCATION SCIENCE AND TECHNOLOGY STOCK CO.,LTD.

Address before: 310013, 15 floor, electronic commerce building, 118 West Wen San Road, Hangzhou, Zhejiang.

Applicant before: ZHEJIANG WANPENG NETWORK TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: 310051 12 / F, building 8, No. 19, Jugong Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: ZHEJIANG WANPENG EDUCATION SCIENCE AND TECHNOLOGY STOCK Co.,Ltd.

Address before: The electronic commerce building, No. 118 Hangzhou West Road, Zhejiang province 310013 city 15 Floor

Patentee before: ZHEJIANG WANPENG EDUCATION SCIENCE AND TECHNOLOGY STOCK Co.,Ltd.

CP02 Change in the address of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 12 / F, building 8, No. 19, Jugong Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province, 310051

Patentee after: Zhejiang Wanpeng Digital Intelligence Technology Co.,Ltd.

Address before: 12 / F, building 8, No. 19, Jugong Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province, 310051

Patentee before: ZHEJIANG WANPENG EDUCATION SCIENCE AND TECHNOLOGY STOCK CO.,LTD.

CP01 Change in the name or title of a patent holder