Valkey: 入门指南

Valkey 快速入门指南

👋 欢迎来到 Stackhero 文档!

Stackhero 提供现成的 Valkey 云 解决方案,具有众多优势,包括:

  • 包含 Redis Commander web UI
  • 无限的消息大小和传输。
  • 只需点击即可轻松完成更新
  • 私有和专用 VM提供的最佳性能和强大安全性

节省时间简化您的生活:只需 5 分钟即可试用 Stackhero 的 Valkey 云托管 解决方案!

Valkey 是一个基于 Redis 的强大且极其快速的内存数据库。当 Redis 转向非开源模式时,Valkey 作为一个稳健的开源替代品从社区和多家公司中涌现出来。它与 Redis 库无缝集成,是理想的替代品。

Valkey 功能多样,可用于多种用途:它可以作为缓存系统、键值数据库、实时数据排序工具,或作为类似事件系统的发布/订阅队列。

为了帮助您连接到 Valkey 实例,我们准备了一些代码示例。您可以在以下 Git 仓库中查看:https://github.com/stackhero-io/valkeyGettingStarted

首先,您可以使用以下命令安装 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 将自动使用在 REDIS_URL 环境变量中配置的 Valkey 服务器。

您可以使用以下方式设置 REDIS_URL 环境变量:

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

有关使用 Sidekiq 和 Valkey 的更多信息,您可以查阅官方文档

Resque 将自动使用在 REDIS_URL 环境变量中定义的 Valkey 服务器。

您可以使用以下方式设置 REDIS_URL 环境变量:

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

有关使用 Resque 和 Valkey 的更多信息,您可以查阅官方文档

您可以使用以下代码在 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 不加密通信。然而,在 Stackhero 上,TLS 加密是开箱即用的。

要利用此功能,只需配置您的 Valkey 客户端以使用 TLS 加密,并使用 <PORT_TLS> 端口连接到您的实例,而不是未加密的 <PORT_CLEAR>

好消息是,您无需担心额外的设置,我们已为您准备好一切。

您的 Valkey 实例由 Stackhero 自动预定义的强密码保护。如果您决定更改它,请确保密码极其复杂。

Valkey 速度很快,但遗憾的是没有内置的暴力攻击保护。攻击者可能每秒尝试多达 150,000 种密码组合。

为减轻这种情况,密码必须至少为 16 个字符(4.5231285e+74 种可能性),默认情况下,我们设置了 64 个字符的密码(9.61963e+111 种可能性!)。

为了增加安全性并有效阻止暴力攻击,建议配置 Stackhero 的防火墙(在“Firewall”选项卡中访问)以限制仅连接到您的 IP 地址。这是一个关键步骤,将显著增强您的安全性!