《Redis

一:管道技术

  - 由于 redis 和 客户端是使用 TCP 连接的,那么在使用中就会产生往返耗时

  - 虽然可能单条影响并不大,但是如果执行较多的命令会对性能产生影响。

  - 使用管道原理和 keep-alive 类似(简单与原理如下图)

    - 通俗的来说就是减少网络请求,减少网络IO造成的性能损耗

  - 

二:使用批量操作

  - 原生命令:例如mget、mset。

    - 非原生命令:可以使用pipeline提高效率。   

    - 两者不同:

        - 原生是原子操作,pipeline是非原子操作。
      - pipeline可以打包不同的命令,原生做不到
      - pipeline需要客户端和服务端同时支持。

二:节省空间

  - 在目前的互联网发展中,内存仍旧远远大于硬盘的价值,所以如何尽可能的优化我们的内存,也是非常值得学习的地方。

  - 精简键名 【在尽可能表达清楚意思时精简键名的长度】

  - 内部编码优化

    - 在 Redis 内部,每一个键值都是一个 RedisObject 结构体保存,每个结构体保存了键值具体的数据类型

    - 使用 OBJECT ENCODING 键 来查看当前键的类型

    - 这里只说明一下大致思路,具体的优化方向及其策略在之后会系统学习。 

原文地址:https://www.cnblogs.com/25-lH/p/10457587.html