这篇教程将一步步带你了解构建 Redis 客户端与服务端的过程. 我们将从使用Rust异步编程的基础开始. 我们将实现一个Redis 命令的子集并且获得关于Tokio的全方位的了解.
你将在本教程中构建的工程可以在 Mini-Redis on GitHub 上获得. Mini-Redis被设计的主要目的是 为了学习tokio,这种方式备受好评, 但这也意味着Mini-Redis缺少你想要的真实Redis库中的一些功能与特性. 你可以在这里 crates.io 上找到生产级可用Redis库.
我们将在本教程中直接使用Mini-Redis. 这使得我们在教程的后面实现部分之前,可以使用Mini-Redis的部分功能.
在任何时候, 如果你的学习被卡住, 你总能在 Discord 或 Github discussions 上得到帮助. 不必担心问一些 "初学者" 问题. 我们都是从某个地方开始的,并且乐于提供帮助.
读者应该已经熟悉了 Rust . Rust book 是入门的绝佳资源.
虽然不是必须的, 但是你有Rust标准库或其它语言编写网络代码的一些经验的话,那将会有所帮助.
Redis相关的知识不是必要的.
在我们开始之前, 你应该确保你已安装了 Rust 工具链并做好了准备. 如果你没有做好这些, 使用 rustup 来安装是一个很好的方式.
本教程需要的最小Rust版本是 1.39.0
, 但是推荐最好是最近的 Rust stable 版本.
为了检查Rust已经安装到你的电脑上, 执行如下命令查看:
rustc --version
你应该会看到像 rustc 1.43.1 (8d69840ab 2020-05-04)
这样的输出.
接下来安装Mini-Redis 服务. 它被用来测试我们即将要构建的客户端.
cargo install mini-redis
执行下面的命令确保服务启动与安装成功了:
mini-redis-server
然后尝试使用 mini-redis-cli
来得到键 foo
的值:
mini-redis-cli get foo
你应该会看了 nil
.
现在一切都作好了准备. 去到下一章节你将编写你的第一个Rust异步应用.
→ 你好 Tokio