发明名称 一种网络GIS异构集群服务器负载均衡方法
摘要 本发明公开一种网络GIS异构集群服务器负载均衡方法,本方法基于GIS数据访问符合Zipf分布规律的固有属性和服务器异构处理能力,从集群缓存分布上适应用户的密集访问,在提高缓存命中率的同时均衡热点数据的访问负载;从异构集群服务系统整体性能上求解数据请求服务所需的集群系统的最小处理代价,均衡异构集群服务器的负载同时最优用户访问响应时间;并基于数据请求内容进行分发处理,防止热点数据访问负载过分集中。本发明方法高度符合网络GIS中大规模用户的高度聚集访问特性,较好地协调并平衡负载分配和访问局部控制两者间的关系,保证服务效率与负载的最优化,有效地提升实际网络GIS系统的服务性能和异构集群服务系统的利用效率。
申请公布号 CN102624922B 申请公布日期 2014.08.13
申请号 CN201210104786.2 申请日期 2012.04.11
申请人 武汉大学 发明人 李锐;张银锋;张啸
分类号 H04L29/08(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 代理人 薛玲
主权项 一种网络GIS异构集群服务器负载均衡方法,其特征在于,包括以下步骤:步骤1,按访问概率高低对瓦片进行排序,并根据预设的缓存命中率,选择访问概率最高的k个瓦片,即热点瓦片,其中,k=N×h<sup>1/1‑α</sup>,N为瓦片总数;h为预设的缓存命中率;α为Zipf‑like分布参数,0<α≤1;步骤2,将步骤1所得热点瓦片中访问概率高的瓦片置于异构集群服务器组S={S<sub>i</sub>|1≤i≤L}中处理能力强的服务器中,该步骤依次包括以下子步骤:1)根据公式<img file="FDA0000511781890000011.GIF" wi="414" he="299" />计算每个热点瓦片的缓存份数M,若M>L,取M=L,其中,L为异构集群服务器组中服务器的数量,i为服务器的编号,S<sub>i</sub>为编号为i的服务器,Cs(S<sub>i</sub>)为服务器S<sub>i</sub>的缓存大小,j为热点瓦片的编号,Tile<sub>j</sub>为编号为j的热点瓦片,Ts(Tile<sub>j</sub>)为热点瓦片Tile<sub>j</sub>的大小;2)将访问概率从高到低排名第j的热点瓦片标识为Tile<sub>j</sub>,其第N个副本标识为Tile<sub>k×N+j</sub>,其中,j为整数,且j∈[1,k];N为整数,且N∈[1,M‑1];3)按服务器处理能力从强至弱和缓存大小,将热点瓦片及热点瓦片副本顺次存放于异构集群服务器S={S<sub>i</sub>|1≤i≤L}中各服务器;步骤3,建立异构集群服务器负载调度模型,该模型具体如下:网络GIS系统中的一组异构集群服务器S={S<sub>i</sub>|1≤i≤L},用户请求到达率服从均值为λ的泊松分布,用户请求到达间隔服从均值为1/λ的负指数分布,服务器处理请求时间服从均值为1/μ的负指数分布,服务器S<sub>i</sub>可同时处理的用户请求数目为N<sub>i</sub>,服务器S<sub>i</sub>处理请求时间为T<sub>i</sub>,负载分配器按照转发概率p<sub>i</sub>将用户请求分发给服务器S<sub>i</sub>处理,当用户请求到达服务器时若服务器空闲则被处理,否则进入等待队列,所述的等待队列为M/M/S/∞排队模型;步骤4,基于步骤3的异构集群服务器负载调度模型,以异构集群服务器系统最小处理请求时间为优化目标,计算异构集群服务器的用户请求到达率均值{λ<sub>1</sub>,λ<sub>2</sub>,...,λ<sub>L</sub>},并根据<img file="FDA0000511781890000012.GIF" wi="284" he="149" />得到用户请求转发至各服务器的转发概率{p<sub>1</sub>,p<sub>2</sub>,...,p<sub>L</sub>},其中,λ<sub>i</sub>为服务器S<sub>i</sub>的用户请求到达率均值,p<sub>i</sub>为用户请求转发至服务器S<sub>i</sub>的转发概率,i=1,2,...,L;所述的计算异构集群服务器的用户请求到达率均值{λ<sub>1</sub>,λ<sub>2</sub>,...,λ<sub>L</sub>}具体为:求解异构集群服务器系统请求处理时间期望值T,将T描述为有约束的非线性规划数学模型,并通过罚函数法求解使T为最小值的一组用户请求到达率均值{λ<sub>1</sub>,λ<sub>2</sub>,...,λ<sub>L</sub>},所述的异构集群服务器系统请求处理时间期望值<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>T</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>L</mi></munderover><mrow><mo>(</mo><mfrac><mrow><msup><msub><mi>&rho;</mi><mi>i</mi></msub><msub><mi>N</mi><mi>i</mi></msub></msup><msub><mover><mi>&rho;</mi><mo>&OverBar;</mo></mover><mi>i</mi></msub></mrow><mrow><mi>&lambda;</mi><mrow><mo>(</mo><msub><mi>N</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>!</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mover><mi>&rho;</mi><mo>&OverBar;</mo></mover><mi>i</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>[</mo><msup><mi>e</mi><msub><mi>&rho;</mi><mi>i</mi></msub></msup><mo>+</mo><mfrac><msup><msub><mi>&rho;</mi><mi>i</mi></msub><msub><mi>N</mi><mi>i</mi></msub></msup><mrow><mrow><mo>(</mo><msub><mi>N</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>!</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mover><mi>&rho;</mi><mo>&OverBar;</mo></mover><mi>i</mi></msub><mo>)</mo></mrow></mrow></mfrac><mo>]</mo></mrow></mfrac><mo>+</mo><mfrac><msub><mi>&lambda;</mi><mi>i</mi></msub><mi>&mu;&lambda;</mi></mfrac><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0000511781890000021.GIF" wi="1178" he="248" /></maths>其中,L为异构集群服务器中服务器的数量;<img file="FDA0000511781890000022.GIF" wi="216" he="158" />反映服务器处于忙的概率;<img file="FDA0000511781890000023.GIF" wi="220" he="137" />反映处理一个请求服务器S<sub>i</sub>处于忙的概率;N<sub>i</sub>为服务器S<sub>i</sub>可同时处理的用户请求数目,λ为异构集群服务器的用户请求到达率均值,λ<sub>i</sub>为服务器S<sub>i</sub>的用户请求到达率均值,μ为异构集群服务器处理请求时间的平均值;步骤5,负载分配器接收到用户请求时,判断该请求内容是否为热点瓦片,若用户请求内容为非热点瓦片,采用如下的分发策略:负载分配器临时生成[0,1)区间的随机数,根据随机数在异构集群服务器S={S<sub>i</sub>|1≤i≤L}中服务器转发概率空间的落点,将用户请求分发至落点所在概率空间所对应的服务器,所述的服务器S<sub>i</sub>转发概率空间为<img file="FDA0000511781890000024.GIF" wi="356" he="149" />若用户请求内容为热点瓦片,采用如下的分发策略:查询热点瓦片的缓存服务器表,将缓存热点瓦片的缓存服务器组成热点瓦片缓存服务器组Sc={Sc<sub>i</sub>|1≤i≤K},根据热点瓦片缓存服务器组中各服务器的负载记录表,若显示热点瓦片缓存服务器组过载,则负载分配器临时生成[0,1)区间的随机数,根据该随机数在异构集群缓存服务器S={S<sub>i</sub>|1≤i≤L}中服务器转发概率空间的落点,将用户请求分发至落点所在概率空间所对应的服务器,所述的服务器S<sub>i</sub>转发概率空间为<img file="FDA0000511781890000025.GIF" wi="356" he="148" />若热点瓦片缓存服务器组未过载,负载分配器临时生成[0,1)区间的随机数,根据随机数在热点瓦片缓存服务器组Sc={Sc<sub>i</sub>|1≤i≤K}中服务器转发概率空间的落点,将用户请求分发至落点所在概率空间所对应的热点瓦片缓存服务器,所述的热点瓦片缓存服务器Sc<sub>i</sub>的转发概率空间为<img file="FDA0000511781890000031.GIF" wi="422" he="148" />其中,<img file="FDA0000511781890000032.GIF" wi="347" he="140" />p<sub>j</sub>为热点瓦片缓存服务器Sc<sub>j</sub>的原始转发概率,p'<sub>j</sub>为归一化后瓦片缓存服务器Sc<sub>j</sub>的转发概率。
地址 430072 湖北省武汉市武昌珞珈山武汉大学