Chapter 02

イントロダクション

magurotuna
magurotuna
2021.02.25に更新

原文: https://tokio.rs/tokio/tutorial

このチュートリアルは Redis クライアントとサーバーを作る過程を通して少しずつ進んでいきます。まず Rust における非同期プログラミングの基礎から始めます。Redis コマンドの一部分を実装していき、Tokio について全体を見て回っていきましょう。

Mini-Redis

このチュートリアルで作るプロジェクトは Mini-Redis リポジトリ から入手可能です。 Mini-Redis はTokioを学習することが第一目標となるように設計されており、ソースコード中にたくさんのコメントがあります。しかし 現実の Redis ライブラリに求められる機能がいくつか欠けているということに注意してください。本番環境で使うことのできる Redis ライブラリは crates.io で見つけることができます。

このチュートリアルでは Mini-Redis を直接使用していきます。チュートリアルの後半で自分たちで実装をする前に、Mini-Redis の機能の一部分を使うためです。

助けを求める

どの箇所であっても、もし行き詰まったら Discord または GitHub discussions でいつでも助けを求めることができます。初心者の質問をすることに心配はいりません。我々はみな最初は初心者でしたし、喜んであなたの助けになります。

前提条件

対象読者は、すでに Rust に慣れている方です。The Rust Book は素晴らしい教材[1]で、ここから始めるのが良いでしょう。

必須ではないものの、Rust の標準ライブラリ (あるいは Rust 以外の言語)を使った、ネットワークについてのコードを書いた経験が多少あると良いかもしれません。

Redis についての知識は必要ありません。

Rust

始める前に、Rust ツールチェーンがインストールされていて、利用可能となっていることを確認してください。まだインストールしていない場合は、rustup を使ってインストールするのが手早いです。

このチュートリアルではバージョン 1.45.0 以上の Rust が必要になりますが、最新の stable バージョンを使うのがおすすめです。

Rust があなたの環境にインストールされていることを確認するため、次のコマンドを実行してください:

$ rustc --version

rustc 1.46.0 (04488afe3 2020-08-24) のような出力が確認できるはずです。

Mini-Redis サーバー

次に Mini-Redis サーバーをインストールします。これは、我々がこれから作っていく Redis クライアントの動作を確認するために使うものです。

$ cargo install mini-redis

インストールが正しく完了したかどうか、次のコマンドで確かめましょう:

$ mini-redis-server

そして mini-redis-cli を使って foo というキーを取得してみます:

$ mini-redis-cli get foo

(nil) と表示されるはずです。

準備完了

以上で、すべての準備が整いました。次のページに進んで、最初の非同期 Rust アプリケーションを書いていきましょう。

脚注
  1. 訳注: 有志による日本語バージョンもあります: https://doc.rust-jp.rs/book-ja/index.html ↩︎