在选择某云与某云的网络,或者是其它网络的时候,它们的带宽价格简直是贵的惊人,一般主机提供商都会给大家两个选择,一个是带宽包月,有限制,另一个是按量没有限制,如何才能选择到适合自己主机的带宽呢?也是就把价格最小化,宽带最大化。
使用说明
这里用js
写了一个一段计算某腾云的方法,以供大家参考
let cons = [
{
speed: [1, 2],
money: 20
},
{
speed: [3, 6],
money: 25
},
{
speed: [6, 200],
money: 90
}
];
let preTotalMoney = 0;
let speedTypes = ['m', 'g', 'tb', 'pb', 'eb', 'zb', 'yb', 'nb'];
function fan1(total, maxSpeed, speedType) {
total = total * (Math.pow(1024, speedTypes.indexOf(speedType)));
let useMaxTotal = 60 * 60 * 24 * 30 * maxSpeed;
for (let i in cons) {
let obj = cons[i];
if (maxSpeed >= obj.speed[0] && maxSpeed <= obj.speed[1]) {
if (useMaxTotal >= total) {
for (let s = 0; s < i; s++) {
preTotalMoney += (cons[s].money * (cons[s].speed[1] - cons[s].speed[0] + 1));
}
preTotalMoney += (obj.money * ((maxSpeed - obj.speed[0]) + (i == 0 ? 1 : 0)))
break;
}
}
}
return preTotalMoney;
}
function fan2(total, maxSpeed, speedType) {
total = total * (Math.pow(1024, speedTypes.indexOf(speedType)));
return (Math.ceil(total / 1024)) * 0.8
}
调用方法
let tTotal = 1024;//主机计划总用流量
let tSpeed = 4;//主机计划最高峰带宽
let fan1Result = fan1(tTotal,tSpeed,'m');
let fan2Result = fan2(tTotal, tSpeed,'m');
console.log.apply(console,'包月¥:',fan1Result);
console.log.apply(console,'按量¥:',fan2Result);
得出如下结果
包月¥:65
按量¥:0.8
如果使用流量再加两个00
let tTotal = 102400;//主机计划总用流量
let tSpeed = 4;//主机计划最高峰带宽
输出结果
包月¥:65
按量¥:80
大家可按照自己的业务进行值的输入,看怎样的带宽适合自己。