public function actionRank(){
// 生成随机字符串
function get_random($len,$chars)
{
$hash = "";
$max = strlen($chars) - 1;
for ($i=0; $i < $len; $i++) {
$hash .= $chars[mt_rand(0,$max)];
}
return $hash;
}
$dd = Yii::$app->redis;
$cachkey = "rank_";
$check = $dd->exists($cachkey);
if($check){
$dd->del($cachkey);
}
$dataOne='';$dataTow='';
for($i=0;$i<5;$i++){
$num = rand(0,100);
$str = get_random(6,'abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ');
$dd->ZADD($cachkey,$num,json_encode(['name'=>$str]));
}
//由大到小排序 ZREVRANGE salary 0 -1 WITHSCORES # 递减排列
$dataOne = $dd->ZREVRANGE($cachkey,0,-1,WITHSCORES);
// 由小到大排序 ZRANGE salary 0 -1 WITHSCORES # 递增排列
$dataTow = $dd->ZR
redis实现排行榜
最新推荐文章于 2025-04-19 20:30:49 发布
本文介绍了如何利用Redis的特性,尤其是哈希算法,来构建高性能的排行榜系统。内容涵盖Redis的数据类型选择、数据结构设计以及操作命令,旨在展示如何在数据库层面优化高并发场景下的排名计算。

最低0.47元/天 解锁文章
2264

被折叠的 条评论
为什么被折叠?



