redis hset使用

原创 2017年01月03日 19:09:28
redis hset使用

首先我来说一下场景:

原来是程序是这样的,在网站上面有一个网友互动的聊天平台  可以发送聊天记录,然后把这些记录都存储到数据库中,初始化的时候从数据库取出来存储到一个static map里面,然后页面发送消息的时候更新这个map以及数据库,每秒取一次,取得是map中的数据。

现在我需要把这个map缓存机制换为redis

//判断redis中是否有这个map redisUtil见前篇
 if (redisutil.HASH.hlen("ctl:sub_id:" + sub_id) > 0L) {
          cb.setIndex_num((int)redisutil.HASH.hlen("ctl:sub_id:" + sub_id));
        }
//把插元素到map里面 redisutil类这里三个参数都是byte[]
        redisutil.HASH.hset("ctl:sub_id:" + sub_id, cb.getChat_id(),SerializableUtil.serialize(cb));

//获取数据的时候



 if ((is_t_audit == 1) && ((int)redisutil.HASH.hlen("atl:sub_id:" + sub_id) > 0))
      {
        //前面是以参数byte[]形式插入的 但是这里可以用string的方式取出来
        Map<String,String> amap = redisutil.HASH.hgetAll("atl:sub_id:" + sub_id);
        for (String s : amap.keySet()) {
        //这里需要返回byte[]那么参数要为byte[]
          byte []temp= redisutil.HASH.hget(("atl:sub_id:" +                        sub_id).getBytes(),s.getBytes());
          ChatBean cb = (ChatBean)SerializableUtil.deserialize(temp);
          tL.add(cb);
        }
      }


Redis教程(三) 散列(HSET)类型

Redis的键值可以支持数据类型:字符串,列表,散表,集合,有序集合、HyperLogLog,通过选用不同的数据结构,用户可以使用Redis解决各式各样的问题。 散列类型与Java中的HashMap相...
  • yuan_xw
  • yuan_xw
  • 2016年08月23日 18:09
  • 4223

Redis系列-存储篇hash主要操作函数小结

阳光透过玻璃,洒在身上,一杯暖茶在手,说不尽的安逸自得,让我有种想再写篇blog的冲动。上篇主要谈了string,这里谈谈hash吧! hash是一些列key value(field value)的...

redis 中 set 和 hset 有什么不同,什么时候使用 hset 什么时候使用set?

redis 中存数据时,到底什么时候用  hset 相比于 set 存数据时又有什么不一样? set  就是普通的已key-value 方式存储数据,可以设置过期时间。时间复杂度为 O(1),没多执行...

go中利用hmset替换hset来提高redis的存取效率及并发goroutine可能遇到的问题

go 中直接利用hset向redis存入数据效率较低,当要存入的数据已知时,可以利用hmset 来替换hset进行存储。 var args []interface{}{"myhash"} for...

Redis HSET 详解

HSET HSET key field value 将哈希表 key 中的域 field 的值设为 value 。 如果 key 不存在,一个新的哈希...

Jedis中hset散列相关操作

Redis的是kv数据库,对于value可以是以下几种情况 哈希应用:在开发过程中,有些字段是临时的或者是开发后期才想到的,就直接添加进去(在设计开发过程中没有想好,比如小明在上学前没有学校...

Redis之Java增删改查

jedis是java的redis客户端实现,要使用jedis需要添加jedis的maven依赖:     redis.clients     jedis     2.4.2 redis最简单的使用:...

redis hset 和hsetnx 的区别是什么

命令参数: HSET key field value HSETNX key field value 作用区别: HSET 将哈希表 key 中的域 field 的值设为 value 。...

redis t_hash哈希对象的源码分析

哈希对象的编码可以是ziplist或者hashtable。

redis命令详解与使用场景举例——Hash

HDEL key field [field …]删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。 在Redis2.4以下的版本里, HDEL 每次只能删除单个域,如果你需要在一个原子时...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:redis hset使用
举报原因:
原因补充:

(最多只允许输入30个字)