基本介绍

Redis 客户端由 gredis 组件实现,底层采用了链接池设计。

NoSQL Redis - 图1提示

为了保证通用性和扩展性, gredis 组件采用了 命令通道 的方式执行 Redis 操作。当您不知道命令通道的参数如何传递时,可以参考终端命令行的参数传递。也就是说,所有的操作都和命令行的参数传递保持一致。

使用方式

安装:

  1. go get -u github.com/gogf/gf/contrib/nosql/redis/v2

引用:

  1. import (
  2. _ "github.com/gogf/gf/contrib/nosql/redis/v2"
  3. // other imported packages.
  4. )

接口文档

简要介绍:

gredis 使用了连接池来进行 Redis 连接管理,通过 Config 配置对象或者 Set* 方法可以对连接池的属性进行管理,通过 Stats 方法可以获取连接池的统计信息。 gredis 使用接口化的设计来解耦对 redis 的底层依赖,通过社区组件的方式实现了 100+ 项常用方法,并且提供了分组的方式来管理接口。

NoSQL Redis - 图2注意

gredis.Redis 客户端对象提供了一个 Close 方法,该方法用于关闭 Redis 客户端(同时关闭客户端的连接池),而不是连接对象,开发者基本不会用到,非高级玩家请不要使用。

组件特性

gredis 具有以下显著特性:

  • 使用简便,功能强大
  • 统一配置组件进行配置
  • 提供 100+ 项常用方法社区组件实现
  • 支持单实例及集群化操作
  • 支持 Redis 服务所有特性
  • 支持 OpenTelemetry 可观测性
  • 支持单例对象、也支持动态创建对象
  • 接口化设计,很高的灵活性和扩展性

相关文档

📄️ Redis-配置管理在GoFrame框架中使用gredis组件进行Redis的配置管理。我们推荐通过配置文件来管理Redis配置,支持单实例和集群化配置。此外,还详细说明了各种配置项的使用方法,并提供了相关的代码示例供参考。

📄️ Redis-使用示例使用GoFrame框架在Redis中执行基本操作的示例,包括Set/Get、SetEx、HSet/HGetAll和HMSet/HMGet操作。这些代码示例展示了如何通过GoFrame框架的Redis模块进行数据存储和检索,适用于初学者学习如何在GoFrame框架环境中实现Redis功能。本示例同时提醒用户在Redis版本4.0.0及以上中HMSET已弃用,应使用HSET。

📄️ Redis-命令交互在使用GoFrame框架构建的应用中,通过Redis命令交互以及自动化的方式来序列化和反序列化数据。首先,我们讲解了Do方法的强大扩展性,它允许任何Redis命令的执行。随后我们展示了如何使用map和struct来存取数据,并利用json序列化简化编程。通过GoFrame框架与Redis的结合,开发者可以更加高效地进行数据管理。

📄️ Redis-Conn对象在GoFrame框架中使用Redis的Conn对象进行长链接操作,如订阅发布等功能。通过使用连接池获取连接对象进行操作,同时注意连接对象超时问题以及使用后的关闭操作。示例代码展示了通过Conn实现订阅发布模式,程序将在终端打印从Redis Server获取的数据。

📄️ Redis-接口化设计使用GoFrame框架中的gredis实现一个接口化设计的Redis组件,具备强大灵活性和扩展性。通过实现自定义Redis Adapter,可以轻松覆盖默认实现的方法。文中提供了详细示例,展示了如何在自定义Do方法中实现日志打印,并在业务中使用。