欢迎光临
我们一直在努力

php方案 灰度发布

灰度发布,说白了就是新功能不一下子给所有人用,先给一小部分人试试水。

比如你改了个功能,怕出bug,那就先给10%的用户用新版,剩下90%还用老版。没问题再慢慢放开到50%100%

最简单的PHP实现

<?php
// 假设用户ID是 12345
$userId = 12345;

// 灰度比例 20% (0-100之间的数)
$grayPercent = 20;

// 用户ID取余100,看落在哪个区间
if ($userId % 100 < $grayPercent) {
echo "走新功能"; // 20%的人会进这里
} else {
echo "走老功能"; // 80%的人走这里
}
?>

代码意思:
用用户ID除以100取余数,余数肯定是099
如果余数小于20,就走新功能(正好占20%
其他人走老功能

稍微高级点的(可配置)

<?php
function isGray($userId, $percent) {
return ($userId % 100) < $percent;
}

$userId = $_SESSION['user_id']; // 当前用户

if (isGray($userId, 20)) {
// 新版本代码
include 'new_feature.php';
} else {
// 老版本代码
include 'old_feature.php';
}
?>

核心思路:
用户ID是固定的,取余后永远落在同一个位置,所以同一个用户每次都会进同一个分支,体验一致。想扩大灰度就改百分比,从20改到
50再到100

赞(0)
未经允许不得转载:171主机测评 » php方案 灰度发布
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址