Redis拥有众多语言的客户端实现,比如C, C++, Java, Python等等,详见文末第一条参考链接。本文主要介绍一个C客户端——hiredis,它支持Redis所有命令集及Pipelining等特性,同时支持事件驱动编程。
继续阅读“Redis学习笔记(十一)Hiredis”
月份:2018年6月
Redis学习笔记(十)Pipelining
Redis还提供了一种技术——Pipelining(流水线?管线?还是管道?),姑且翻译成管道吧。使用Redis的管道技术可以同时发送多个命令,以节省往返时间。
继续阅读“Redis学习笔记(十)Pipelining”
Redis学习笔记(九)Persistence
本文会介绍Redis持久化特性的实现机制,包括RDB的优缺点、AOF的优缺点,以及对选择RDB还是AOF做了分析,建议所有的Redis用户阅读。若想对Redis持久性有一个更广泛的认识,请参考文末第二篇参考链接。
继续阅读“Redis学习笔记(九)Persistence”
Redis学习笔记(八)Replication
Redis还提供了主从复制的机制,实现Redis从机服务器精确地复制Redis主机服务器上的数据。每次连接中断后,从机会自动地与主机再次建立连接,并尝试与主机同步成为主机的副本。
继续阅读“Redis学习笔记(八)Replication”
Redis学习笔记(七)Transactions
Redis还提供了事务机制,MULTI, EXEC, DISCARD以及WATCH等命令构成了Redis事务机制的基础。本文将会介绍Redis事务的一些基本特性及使用方法等,并对乐观锁做了一些基础的介绍。
继续阅读“Redis学习笔记(七)Transactions”
Redis学习笔记(六)Publish Subscribe
Redis还是一个稳定、快速的发布/订阅消息系统。订阅者可以订阅一个或多个他们感兴趣的channel,当发布者将消息发送到指定的channel中之后,订阅者就会收到消息。
继续阅读“Redis学习笔记(六)Publish Subscribe”
Redis学习笔记(五)Sorted Sets
前面学习了Sets类型,Sets类型中存储的元素是唯一的、无序的。对此,Redis还提供了一种介于Sets和Hashes类型之间的有序集合类型——Sorted Sets。
继续阅读“Redis学习笔记(五)Sorted Sets”
Redis学习笔记(四)Sets
Redis Sets是字符串的无序集合,可以实现O(1)时间复杂度完成添加、删除等操作。并且,Redis中不允许出现重复的成员,多次添加相同的元素也只会存在唯一的一个副本。Redis Sets对象最多能够存储2^32-1个成员。
继续阅读“Redis学习笔记(四)Sets”
Redis学习笔记(三)Hashes
Redis Hashes实现了字符串字段(fields)到字符串值(value)之间的映射,尤其适用于那些拥有多个字段的对象。比如,一个用户对象拥有诸如姓名、性别、年龄等字段,使用Hashes来存储它们会很方便。
继续阅读“Redis学习笔记(三)Hashes”
Redis学习笔记(二)Lists
Redis中还有一个常用的类型——Lists。如果你接触过Python语言,那么你应该知道Python中也有List类型,不同的是:Python中的List类型其实就是一个数组,而Redis中的List类型底层则是用链表(Linked Lists)实现的。
继续阅读“Redis学习笔记(二)Lists”