Ruby: Redis
如何将 Ruby 连接到 Redis
👋 欢迎来到 Stackhero 文档!
Stackhero 提供了一种即用型 Ruby 云 解决方案,具有众多优势,包括:
- 通过简单的
git push在几秒钟内 部署您的应用程序。- 使用您自己的域名,并享受 HTTPS 证书的自动配置以增强安全性。
- 享受自动备份、一键更新以及简单、透明和可预测的定价带来的安心。
- 通过私有和专用的 VM获得最佳的性能和强大的安全性。
节省时间并简化您的生活:尝试 Stackhero 的 Ruby 云托管 解决方案只需 5 分钟!
Redis,即 Remote Dictionary Server,是一种以内存为基础的数据库,以其卓越的性能而闻名。
Redis 采用 GNU AGPLv3 许可证。如果您正在寻找采用宽松许可证的替代方案,Valkey 是 Redis 的一个流行社区维护分支,采用 BSD 许可证。它已被许多知名公司广泛认可,并且也可在 Stackhero 上使用。
Redis 通常被描述为 NoSQL 数据库,支持多种数据结构,包括 strings、hashes、lists、sets 和 sorted sets。由于它在处理大规模数据时速度快且效率高,Redis 成为 caching、实时分析、消息传递等场景中的热门选择。
当您希望提升性能、可扩展性和灵活性时,Redis 与 Ruby 和 Ruby on Rails 配合得非常好。借助 Redis,Ruby 开发者可以添加 caching、session 管理、实时数据处理以及后台 job 处理等功能。
以下是 Redis 与 Ruby 和 Ruby on Rails 搭配使用的一些常见方式:
- Caching: Redis 可以在 Rails 应用中充当 cache store,以降低数据库负载并改善响应时间。
- Background job processing: Redis 常被用作 Sidekiq 和 Resque 等流行 job 处理库的 backend,帮助后台任务更高效、更可靠地运行。
- Real-time features: Redis Pub/Sub 可实现通知、聊天系统和实时分析等实时功能,通过在应用组件之间快速传递消息来完成。
Stackhero 提供开箱即用的 Redis cloud 解决方案,并具备多项实用优势:
- 包含
Redis Commanderweb UI。- 消息大小和传输均为 无限制。
- 只需一键即可轻松完成 updates。
- 由 私有专用 VM 提供支持,具备强劲的 performance 和可靠的 security。
节省时间并简化部署。只需 5 分钟,即可试用 Stackhero 的 Redis cloud hosting 解决方案。
将 Redis 配置为 Ruby on Rails 的缓存系统
首先,您可以安装 redis gem:
bundle add redis
接下来,您可以在 config/environments/production.rb 文件中更新这一行:
config.cache_store = :redis_cache_store, { url: ENV["REDIS_URL"] }
之后,您可以定义 REDIS_URL 环境变量。此示例展示了应使用的格式。只需将 <yourPassword> 和 <XXXXXX> 替换为您自己的值:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:6380"
如果您想了解更多关于在 Ruby on Rails 中将 Redis 用作缓存系统的细节,可以查看 Rails 官方文档。
配置 Redis 与 Sidekiq 一起使用
Sidekiq 会自动使用在 REDIS_URL 环境变量中定义的 Redis 服务器。
您可以像这样定义 REDIS_URL,将 <yourPassword> 和 <XXXXXX> 替换为您自己的值:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:6380"
如果您想进一步了解 Sidekiq 和 Redis,可以查看官方文档。
配置 Redis 与 Resque 一起使用
Resque 会自动使用在 REDIS_URL 环境变量中定义的 Redis 服务器。
您可以像这样定义 REDIS_URL,将 <yourPassword> 和 <XXXXXX> 替换为您自己的值:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:6380"
如果您想进一步了解 Resque 和 Redis,可以查看官方文档。