代码拉取完成,页面将自动刷新
用 PHP 实现几种负载均衡调度算法,详细见 负载均衡算法 系列。fork
composer require tinywan/load-polling
// 服务器数
$services = [
'192.168.10.1' => 5,
'192.168.10.2' => 1,
'192.168.10.3' => 1,
];
// 使用平滑加权算法 (Smooth Weighted Round Robin)
$robin = new \Robin\SmoothWeightedRobin();
$robin->init($services);
$nodes = [];
$sumWeight = $robin->getSumWeight();
for ($i = 1; $i <= $sumWeight; $i++) {
$node = $robin->next();
$nodes[$i] = $node;
}
var_export($nodes);
// 会生成如下均匀序列
array (
1 => '192.168.10.1',
2 => '192.168.10.1',
3 => '192.168.10.2',
4 => '192.168.10.1',
5 => '192.168.10.3',
6 => '192.168.10.1',
7 => '192.168.10.1',
)
安装提示错误:Could not find package tinywan/load-polling in a version matching 1.0
尝试改成Packagist的地址 https://packagist.org
"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.org"
}
}
要使你发布的最新包可以使用,请使用以上的镜像源,为了学习
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。