Redis-对象

  Redis主要数据结构:SDS、双端链表、字典、压缩列表、整数集合等等。

  Redis并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,这个系统包含字符串对象、列表对象、哈希对象、集合对象和有序集合对象这 5 种类型的对象。每种对象都至少用到了上述所说的数据结构。

  通过这5 种不同类型的对象,Redis可以在执行命令前,根据对象的类型来判断对象是否可以执行给定的命令。使用对象的另一个好处就是可以针对不同的使用场景为对象设置不同的数据结构实现,从而优化对象在不同场景下的使用效率。

  除此之外,Redis的对象系统还实现了基于引用计数计数的内存回收机制,当程序不再使用某个对象的时候,这个对象所占用的内存就会被自动是否;另外,Redis还通过引用计数技术实现了对象共享机制,这一机制可以在适当的条件下,通过让多个数据库共享同一个对象来节约内存。

  最后,Redis的对象带有访问时间记录信息,该信息可以用于计算数据库键的空转时长,在服务器启用了maxmemory功能的情况下,空转时长越大的那些键就可能会优先被服务器删除。

    

猜你喜欢

转载自www.cnblogs.com/luoshengjie/p/10232554.html
今日推荐