redis综合案例LOL英雄出场次数

本文介绍了一个使用Redis ZSet结构实现的LOL英雄出场次数排行榜系统。系统通过不断更新在线游戏中英雄的出场次数,并定期展示排行榜,实现了英雄出场热度的实时统计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需要做一个lol英雄出场排行榜
通过redis zset结构实现
maven

        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>${scala.version}</version>
        </dependency>
        
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.7.1</version><!--版本号可根据实际情况填写-->
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.3.2</version><!--版本号可根据实际情况填写-->
        </dependency>

更新英雄出场次数到redis

package redis

import java.util

import redis.clients.jedis.{Jedis, Tuple}

import scala.util.Random

/**
  * @date :2021/8/3 12:30
  * @author :xiaotao
  * @description :更新英雄出场次数到redis
  */
object IdeaToRedisDemo {
  def main(args: Array[String]): Unit = {

    //生成访问数据
    val heros = Array("易大师", "盖伦", "金克斯", "奥巴马", "瞎子", "安妮", "光辉", "石头")

    val random = new Random()

    //获取redis连接
    val jedis = new Jedis("wxt02",6379)
    jedis.auth("123456")
    while(true){
      //随机挑一个英雄
      val hero = heros(random.nextInt(heros.length))
      //更新redis中的英雄出场次数
      jedis.zincrby("chuchangbang",1,hero)
      //玩
      println("敌人30秒后将到达战场.... 人在塔在....")
      Thread.sleep(200)
    }
  }
}

在这里插入图片描述
redis中的数据
在这里插入图片描述

排行榜数据更新

package redis

import java.util

import redis.clients.jedis.{Jedis, Tuple}

/**
  * @date :2021/8/3 13:02
  * @author :xiaotao
  * @description :排行榜数据更新
  */
object RedisToIdeaDemo {
  def main(args: Array[String]): Unit = {
    //排行榜数据更新
    //连接redis数据库
    val jedis = new Jedis("wxt02",6379)
    jedis.auth("123456")
    while(true){
      val zrevrangeWithScores : util.Set[Tuple] = jedis.zrevrangeWithScores("chuchangbang",0,-1)

      import scala.collection.JavaConversions._
      for (tuple <- zrevrangeWithScores){
        println(tuple.getElement+":"+tuple.getScore)
      }
      Thread.sleep(2000)
      println("----------------------------------")
    }
  }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值