个人简介

Echo Blog


江湖无名 安心练剑
  • Redis Learn-20-lazy free 优雅删除
    Redis 单线程的利弊 问题困境 众所周知,redis对外提供的服务是由单线程支撑,通过事件(event)驱动各种内部逻辑,比如网络IO、命令处理、过期key处理、超时等逻辑。 在执行耗时命令(如范围扫描类的keys, 超大hash下的hgetall等)、瞬时大量key过期/驱逐等情况下,会造成redis的QPS下降,阻塞其他请求。 近期就遇到过大容量并且大量key的场景,由于各种...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-19-二维数组-02
    基本概念 redis提供了setbit、getbit、bitcount、bitop四个命令用于处理二进制数组,称为bit array,又叫位数组。 setbit命令用于位数组指定偏移量上的二进制设置值,偏移量从0开始计算,值可以是0或者是1。 getbit获取指定位置上的值。 bitcount统计位数组里面,值为1的二进制位的数量。 bitop可以有and、or、xor,即与、或、...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-18-01-Sort 排序
    Sort 命令 SORT 命令的最简单执行形式为: SORT <key> 这个命令可以对一个包含数字值的键 key 进行排序。 例子 以下示例展示了如何使用 SORT 命令对一个包含三个数字值的列表键进行排序: redis> RPUSH numbers 3 1 2 (integer) 3 redis> SORT numbers 1) "1" 2) "...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-17-01-Lua 脚本 Eval
    支持情况 Available since 2.6.0. Time complexity(复杂度): Depends on the script that is executed. Introduction to EVAL EVAL and EVALSHA are used to evaluate scripts using the Lua interpreter(解释器) built...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-16-02-事务的实现
    事务的实现 一个事务从开始到结束通常会经历以下三个阶段: 事务开始。 命令入队。 事务执行。 本节接下来的内容将对这三个阶段进行介绍, 说明一个事务从开始到结束的整个过程。 事务开始 MULTI 命令的执行标志着事务的开始: redis> MULTI OK MULTI 命令可以将执行该命令的客户端从非事务状...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-16-01-事务
    Transactions MULTI, EXEC, DISCARD and WATCH are the foundation of transactions in Redis. 事务保证了什么 They allow the execution of a group of commands in a single step, with two important guarantees(保...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-15-04-java 代码
    MyListener 要使用Jedis的Publish/Subscribe功能,必须编写对JedisPubSub的自己的实现。 package redis.subpub; import redis.clients.jedis.JedisPubSub; public class MyListener extends JedisPubSub { // 取得订阅的消息后的处理 @...
    2018-12-12 03:35:23 | Redis
  • Redis Learn-15-03-模式的订阅与退订、查看订阅信息
    模式的订阅与退订 服务器将所有模式的订阅关系保存在服务器状态的 pubsub_patterns 属性里面 struct redisServer { //保存所有模式订阅关系 list *pubsub_patterns; //... } pubsub_patterns 属性是一个链表,链表中每一个节点都包含着一个 pubsub_pattern 结构, 这个结构...
    2018-12-12 03:35:23 | Redis