Valkey: 入门指南
Valkey 快速入门指南
👋 欢迎来到Stackhero文档!
Stackhero提供现成的Valkey云解决方案,具有众多优势,包括:
- 包含
Redis Commanderweb UI。- 无限的消息大小和传输。
- 只需点击即可轻松更新。
- 由专用私有VM提供的最佳性能和强大安全性。
节省时间,简化生活:只需5分钟即可试用Stackhero的Valkey云托管解决方案!
Valkey 是一个基于 Redis 的强大且极其快速的内存数据库。随着 Redis 逐渐远离开源模式,Valkey 作为一个稳健的开源替代品,从社区和多家公司中涌现出来。它与 Redis 库无缝集成,是理想的替代选择。
Valkey 多功能,可用于多种用途:它可以作为缓存系统、键值数据库、实时数据排序工具,或作为类似事件系统的发布/订阅队列。
为了帮助您连接到 Valkey 实例,我们准备了一些代码示例。您可以在以下 Git 仓库中探索它们:https://github.com/stackhero-io/valkeyGettingStarted。
在 Ruby 和 Ruby on Rails 中使用 Valkey
将 Valkey 配置为 Ruby on Rails 的缓存系统
要开始使用,您可以通过以下命令安装 redis gem:
bundle add redis
接下来,打开 config/environments/production.rb 文件,并包含以下行:
config.cache_store = :redis_cache_store, { url: ENV["VALKEY_URL"] }
然后,您需要设置 VALKEY_URL 环境变量。以下是如何使用您的信息格式化 URL 的示例:
VALKEY_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"
警告 默认情况下,缓存仅在生产环境中启用。如果您希望在开发中测试缓存,请通过添加上述配置修改
config/environments/development.rb文件,并设置config.action_controller.perform_caching = true以启用缓存。验证缓存是否工作的一个好方法是启动 Rails 控制台(使用bin/rails console)并通过Rails.cache.write("foo", "bar")测试写入。
有关将 Valkey 配置为 Ruby on Rails 缓存系统的更多详细信息,您可以查阅官方 Rails 文档。
在 Sidekiq 上配置 Valkey
Sidekiq 将自动使用在 REDIS_URL 环境变量中配置的 Valkey 服务器。
您可以使用以下信息设置 REDIS_URL 环境变量:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"
有关使用 Sidekiq 和 Valkey 的更多信息,您可以查阅官方文档。
在 Resque 上配置 Valkey
Resque 将自动使用在 REDIS_URL 环境变量中定义的 Valkey 服务器。
您可以使用以下信息设置 REDIS_URL 环境变量:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"
有关使用 Resque 和 Valkey 的更多信息,您可以查阅官方文档。
使用 Valkey 处理 PHP 会话
您可以使用以下代码在 Stackhero 上存储 PHP 会话:
<?php
// 解析 Valkey URL
$valkey_url = parse_url('rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>');
// 配置会话处理器
ini_set('session.save_handler', 'redis');
ini_set('session.save_path', "tls://{$valkey_url['host']}:{$valkey_url['port']}?auth={$valkey_url['pass']}&timeout=5");
// 启动会话
session_start();
?>
提高 Valkey 的安全性
增强 Valkey 设置的安全性至关重要。以下是您可以实施的两项重要措施,以最大限度地提高安全性。
使用 Valkey 加密通信 (TLS)
默认情况下,Valkey 不加密通信。然而,在 Stackhero 上,TLS 加密是开箱即用的。
要利用此功能,只需配置您的 Valkey 客户端以使用 TLS 加密,并使用 <PORT_TLS> 端口连接到您的实例,而不是未加密的 <PORT_CLEAR>。
好消息是,您无需担心额外的设置,我们已为您准备好一切。
保护您的 Valkey 免受暴力攻击
您的 Valkey 实例由 Stackhero 自动预定义的强密码保护。如果您决定更改它,请确保密码极其复杂。
Valkey 速度很快,但遗憾的是,缺乏内置的暴力攻击保护。攻击者可能每秒尝试多达 150,000 种密码组合。
为减轻这种情况,密码必须至少为 16 个字符(4.5231285e+74 种可能性),默认情况下,我们设置了 64 个字符的密码(9.61963e+111 种可能性!)。
为了增强安全性并有效阻止暴力攻击,建议配置 Stackhero 的防火墙(在“Firewall”选项卡中访问)以限制仅连接到您的 IP 地址。这是一个将显著增强您安全性的关键步骤!