﻿ 具有两类请求的云计算中心服务器数量的优化
«上一篇
 文章快速检索 高级检索

 智能系统学报  2017, Vol. 12 Issue (5): 601-607  DOI: 10.11992/tis.201703042 0

引用本文

ZHANG Jiangqiang, ZHAO Ning, LIU Wenqi. Optimization of the number of servers in a cloud computation center with two demand classes[J]. CAAI Transactions on Intelligent Systems, 2017, 12(5): 601-607. DOI: 10.11992/tis.201703042.

文章历史

Optimization of the number of servers in a cloud computation center with two demand classes
ZHANG Jiangqiang, ZHAO Ning, LIU Wenqi
Faculty of Science, Kunming University of Science and Technology, Kunming 650500, China
Abstract: In order to improve the service quality and to save the system cost of the cloud computing center, for a cloud computing center with two demand classes, a method to optimize the number of servers was proposed. First, a queuing model having two demand classes was established for analyzing performance measures such as distribution of the probability of stability and mean queue length; next, a power consumption model was established on the cloud computing center; finally, the wait and power-consumption cost of the system were used together to construct the cost function of the system and optimize the server quantity for realizing the lowest cost. The numerical results show that the optimal number of servers is a non-decreasing function of the arrival rate of demands. To minimize the system cost, dynamically adjusting the number of servers is necessary.
Key words: cloud computing    queuing system    two demand classes    performance measure    power consumption    cost    optimization of the number of servers

1 系统描述

2 系统性能分析

 图 1 具有两类用户请求的排队系统 Fig.1 Queueing system with two demand classes

 $E = \left\{ {\left( {{l_1},{l_2}} \right),{l_1},{l_2} = 0,1, \cdots ,N,{l_1} + {l_2} = N} \right\}。$

l=0的状态: 0，0。

l=1的状态: 1，0，0，1。

l=2的状态: (2, 0), (1, 1), (0, 2)。

l=N的状态:(N, 0)，(N－1, 1)，(N－2, 2)，…，

(2, N－2)，(1, N－1)，(0, N)。

 $\mathit{\boldsymbol{Q = }}\left[ {\begin{array}{*{20}{c}} {{B_{00}}}&{{\mathit{\boldsymbol{B}}_{01}}}&0& \cdots &0&0&0\\ {{\mathit{\boldsymbol{A}}_{10}}}&{{\mathit{\boldsymbol{A}}_{11}}}&{{\mathit{\boldsymbol{A}}_{12}}}& \cdots &0&0&0\\ \vdots&\vdots&\vdots &{}& \vdots&\vdots&\vdots \\ 0&0&0& \cdots &{{\mathit{\boldsymbol{A}}_{N - 1,N - 2}}}&{{\mathit{\boldsymbol{A}}_{N - 1,N - 1}}}&{{\mathit{\boldsymbol{A}}_{N - 1,N}}}\\ 0&0&0& \cdots &0&{{\mathit{\boldsymbol{A}}_{N - 1,N}}}&{{\mathit{\boldsymbol{A}}_{N,N}}} \end{array}} \right]$

 ${\alpha _i} = \min \left( {i,c} \right)$
 ${\beta _{l,i}} = \min \left( {l - i,c} \right),i = 0,1,2, \cdots ,l$
 ${B_{00}} = - {\lambda _1} - {\lambda _2}$
 ${\mathit{\boldsymbol{B}}_{01}} = \left[ {\begin{array}{*{20}{c}} {{\lambda _1}}&{{\lambda _2}} \end{array}} \right]$
 ${\mathit{\boldsymbol{A}}_{l,l - 1}} = {\left[ {\begin{array}{*{20}{c}} {{\beta _{l,0}}{\mu _1}}&0&0& \cdots &0&0\\ {{\alpha _1}{\mu _2}}&{{\beta _{l,1}}{\mu _1}}&0& \cdots &0&0\\ 0&{{\alpha _2}{\mu _2}}&{{\beta _{l,2}}{\mu _1}}& \cdots &0&0\\ \vdots&\vdots&\vdots &{}& \vdots&\vdots \\ 0&0&0& \cdots &{{\alpha _{l - 1}}{\mu _2}}&{{\beta _{l,l - 1}}{\mu _1}}\\ 0&0&0& \cdots &0&{{\alpha _l}{\mu _2}} \end{array}} \right]_{l + 1,l}}$
 ${\mathit{\boldsymbol{A}}_{l,l + 1}} = {\left[ {\begin{array}{*{20}{c}} {{\lambda _1}}&{{\lambda _2}}&0&0& \cdots &0&0&0\\ 0&{{\lambda _1}}&{{\lambda _2}}&0& \cdots &0&0&0\\ 0&0&{{\lambda _1}}&{{\lambda _2}}& \cdots &0&0&0\\ \vdots&\vdots&\vdots&\vdots &{}& \vdots&\vdots&\vdots \\ 0&0&0&0& \cdots &{{\lambda _1}}&{{\lambda _2}}&0\\ 0&0&0&0& \cdots &0&{{\lambda _1}}&{{\lambda _2}} \end{array}} \right]_{l + 1,l + 2}}$
 ${\mathit{\boldsymbol{A}}_{l,l}} = \\ {\left[ {\begin{array}{*{20}{c}} { - {\beta _{l,0}}{\mu _1} - \lambda }&0&0& \cdots &0&0\\ 0&{ - {\alpha _1}{\mu _2} - {\beta _{l,1}}{\mu _1} - \lambda }&0& \cdots &0&0\\ 0&0&{ - {\alpha _2}{\mu _2} - {\beta _{l,2}}{\mu _1} - \lambda }& \cdots &0&0\\ \vdots&\vdots&\vdots &{}&0&0\\ 0&0&0& \cdots &{ - {\alpha _{l - 1}}{\mu _2} - {\beta _{l,l - 1}}{\mu _1} - \lambda }&0\\ 0&0&0& \cdots &0&{ - {\alpha _l}{\mu _2} - \lambda } \end{array}} \right]_{l + 1,l + 1}}$
 图 2 系统状态转移图 Fig.2 Transitions among the system states

Li(t)表示t时刻系统中第i类用户请求的个数，${\pi _{i,j}} = \mathop {\lim }\limits_{t \to \infty } P\left\{ {{L_1}\left( t \right) = i,{L_2}\left( t \right) = j} \right\}$为系统处于状态(i, j)的稳态概率，令

 $\pi = \left( {{\pi _{0,0}},{\pi _{1,0}},{\pi _{0,1}}, \cdots ,{\pi _{N,0}},{\pi _{N - 1,1}}, \cdots ,{\pi _{0,N}}} \right)$

 $\left\{ \begin{array}{l} \pi \mathit{\boldsymbol{Q}} = 0\\ \sum\limits_{j = 0}^N {\sum\limits_{i = 0}^N {{\pi _{i,j}} = 1} } \end{array} \right.$

 $E\left( {{L_1}} \right) = \sum\limits_{i = 1}^N {i\sum\limits_{j = 0}^N {{\pi _{i,j}}} }$
 $E\left( {{L_2}} \right) = \sum\limits_{j = 1}^N {j\sum\limits_{i = 0}^N {{\pi _{i,j}}} }$

 $E\left( {{T_1}} \right) = E\left( {{L_1}} \right)/{\lambda _1}$
 $E\left( {{T_2}} \right) = E\left( {{L_2}} \right)/{\lambda _2}$

 $E\left( T \right) = \frac{{{\lambda _1}}}{{{\lambda _1} + {\lambda _2}}}E\left( {{T_1}} \right) + \frac{{{\lambda _2}}}{{{\lambda _1} + {\lambda _2}}}E\left( {{T_2}} \right)$
3 系统能耗

 ${P_{动}} = c{\rho _1}k\mu _1^\alpha + c{\rho _2}k\mu _2^\alpha = k{\lambda _1}\mu _1^{\alpha - 1} + k{\lambda _2}\mu _2^{\alpha - 1}$

 ${P_{总}} = {P_{静}} + {P_{动}} = c{P^ * } + k{\lambda _1}\mu _1^{\alpha - 1} + k{\lambda _2}\mu _2^{\alpha - 1}$
4 系统成本

 $f\left( c \right) = {h_1}E\left( {{L_1}} \right) + {h_2}E\left( {{L_2}} \right) + \beta {P_{总}}$

 $\left\{ \begin{array}{l} \min f\left( c \right)\\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\frac{{{\lambda _1}}}{{c{\mu _1}}} + \frac{{{\lambda _2}}}{{c{\mu _2}}} < 1\\ c \in {{\bf{N}}^ + } \end{array} \right.$

 $\left\{ \begin{array}{l} f\left( {{c^ * }} \right) < f\left( {{c^ * } - 1} \right)\\ f\left( {{c^ * }} \right) < f\left( {{c^ * } + 1} \right) \end{array} \right.$
5 算例分析

 图 3 最优服务器数量(例2) Fig.3 The optimal number of servers (example 2)

 图 4 最优服务器数量(例3) Fig.4 The optimal number of servers (example 3)
6 结束语

 [1] 廖倩文, 潘久辉, 王开杰. 基于排队理论的云计算中心性能分析模型[J]. 计算机工程, 2015, 41(9): 51-55. LIAO Qianwen, PAN Jiuhui, WANG Kaijie. Performance analysis model of cloud computing center based on queueing theory[J]. Computer engineering, 2015, 41(9): 51-55. (0) [2] 徐小龙, 杨庚, 李玲娟, 等. 面向绿色云计算数据中心的动态数据聚集算法[J]. 系统工程与电子技术, 2012, 34(9): 1923-1929. XU Xiaolong, YANG Geng, LI Lingjuan. Dynamic data aggregation algorithm for data centers of green cloud computing[J]. Systems engineering and electronics, 2012, 34(9): 1923-1929. (0) [3] 许丞, 刘洪, 谭良. Hadoop云平台的一种新的任务调度和监控机制[J]. 计算机科学, 2013, 40(1): 112-117. XU Chen, LIU Hong, TAN Liang. New mechanism of monitoring on Hadoop cloud platform[J]. Computer science, 2013, 40(1): 112-117. (0) [4] 倪志伟, 李蓉蓉, 方清华, 等. 基于离散人工蜂群算法的云任务调度优化[J]. 计算机应用, 2016, 36(1): 107-112, 121. NI Zhiwei, LI Rongrong, FANG Qinghua, et al. Optimization of cloud task scheduling based on discrete artificaial bee colony algorithm[J]. Journal of computer applications, 2016, 36(1): 107-112, 121. DOI:10.11772/j.issn.1001-9081.2016.01.0107 (0) [5] 罗亮, 吴文峻, 张飞. 面向云计算数据中心的能耗建模方法[J]. 软件学报, 2014, 25(7): 1371-1387. LUO Liang, WU Wenjun, ZHANG Fei. Energy modeling based on cloud data center[J]. Journal of software, 2014, 25(7): 1371-1387. (0) [6] CAO J, LI K, STOJMENOVIC I. Optimal power allocation and load distribution for multiple heterogeneous multicore server processors across clouds and data centers[J]. IEEE transactions on computers, 2014, 63(1): 45-58. DOI:10.1109/TC.2013.122 (0) [7] 何怀文, 傅瑜, 杨亮, 等. 性能受限下云中心异构服务器的能耗优化[J]. 计算机应用, 2015, 35(1): 39-42, 61. HE Huaiwen, FU Yu, YANG Liang, et al. Optimal power consumption of heterogeneous servers in cloud center under performance constraint[J]. Journal of computer applications, 2015, 35(1): 39-42, 61. DOI:10.11772/j.issn.1001-9081.2015.01.0039 (0) [8] 谭一鸣, 曾国荪, 王伟. 随机任务在云计算平台中能耗的优化管理方法[J]. 软件学报, 2012, 23(2): 266-278. TAN Yiming, ZENG Guosun, WANG Wei. Policy of energy optimal management for cloud computing platform with stochastic tasks[J]. Journal of software, 2012, 23(2): 266-278. (0) [9] KE M, YEH C, SU C. Cloud computing platform for real-time measurement and verification of energy performance[J]. Applied energy, 2017, 188: 497-507. DOI:10.1016/j.apenergy.2016.12.034 (0) [10] SINGH S, CHANA I. EARTH:Energy-aware autonomic resource scheduling in cloud computing[J]. Journal of intelligent & fuzzy systems, 2016, 30(3): 1581-1600. (0) [11] TAO F, LI C, LIAO T, et al. BGM-BLA:a new algorithm for dynamic migration of virtual machines in cloud computing[J]. IEEE transactions on services computing, 2016, 9(6): 910-925. DOI:10.1109/TSC.2015.2416928 (0) [12] MEI J, LI K, OUYANG A, et al. A profit maximization scheme with guaranteed quality of service in cloud computing[J]. IEEE transactions on computers, 2015, 64(11): 3064-3078. DOI:10.1109/TC.2015.2401021 (0) [13] QI Q, LIAO J, WANG J. Integrated multi-service handoff mechanism with QoS-support strategy in mobile cloud computing[J]. Wireless personal communications, 2016, 87(2): 593-614. DOI:10.1007/s11277-016-3210-3 (0) [14] HUANG Z, LU Y, OUYANG H. Scheduling strategy based on genetic algorithm for cloud computer energy optimization[C]//2015 IEEE International Conference on Communication Problem-Solving. Guilin, China, 2015:516-519. (0) [15] YANG B, LI Z, CHEN S, et al. Stackelberg game approach for energy-aware resource allocation in data centers[J]. IEEE transactions on parallel and distributed systems, 2016, 27(12): 3646-3658. DOI:10.1109/TPDS.2016.2537809 (0) [16] SURESH S, SAKTHIVEL S. System modeling and evaluation on factors influencing power and performance management of cloud load balancing algorithms[J]. Journal of web engineering, 2016, 15(5/6): 484-500. (0) [17] 李春艳, 何一舟, 戴彬. Hadoop平台的多队列作业调度优化方法研究[J]. 计算机应用研究, 2014(03): 705-707, 738. LI Chunyan, HE Yizhou, DAI Bin. Research on optimization of job scheduling based on multi-queue for Hadoop platform[J]. Application research of computers, 2014(3): 705-707, 738. (0) [18] LIU C, LI K, XU C, et al. Strategy configurations of multiple users competition for cloud service reservation[J]. IEEE transactions on parallel and distributed systems, 2016, 27(2): 508-520. DOI:10.1109/TPDS.2015.2398435 (0) [19] ZHURAVLEV S, CARLOS SAEZ J, BLAGODUROV S. Survey of energy-cognizant scheduling techniques[J]. IEEE transactions on parallel and distributed systems, 2013, 24(7): 1447-1464. DOI:10.1109/TPDS.2012.20 (0)