コンテンツにスキップ

チュートリアルの進め方

このチュートリアルでは、引数に 1 を足すだけの小さな Process から始めて、少しずつ題材を育てながら juiz の考え方を学びます。 各章は「動かしてみる」ことを中心にしていて、手を動かしながら読み進められるようにしてあります。

  1. はじめての Process

    引数に 1 を足す Process を動かし、外から呼び出して結果を受け取ります。Process が冪等な関数であることと、call という使い方を学びます。

  2. 状態を持つ: Container と ContainerProcess

    カウンタを題材に、状態を Container に置き、ContainerProcess だけがそれに触れる設計を学びます。

  3. 設定ファイルでまとめて起動する

    これまでの Process と Container を 1 つの設定ファイルで起動します。読み込み(plugins)と実体化(processes / containers)の違いを学びます。

  4. Process をつなぐ: connect と Execution Context

    talker と listener をつなぎ、Execution Context で周期的に動かします。connect というもう一つの使い方を学びます。

  5. Component にまとめて配布する

    複数の機能要素を 1 つのプロジェクトにまとめます。Component が配布の単位であることを学びます。

  6. 別々のプロセスをつなぐ

    別々に起動した juiz どうしを、設定ファイルなしでコマンドからつなぎます。Process が場所を問わず ID(URL)でつながることを学びます。

  7. 通信方式を選ぶ: QUIC ブローカー

    第 6 章の接続を、HTTP の代わりに QUIC ブローカーで行います。通信方式はブローカーとして差し替えられ、ID の先頭がそれを表すことを学びます。

  • 章の最初に「この章で学ぶこと」、最後に「まとめ」があります。
  • コード例は Rust・Python・C++ のタブで切り替えられます。一度選んだ言語は、ほかのページでもそのまま保たれます。
  • コードはサンプル集(Rust・Python・C++)のファイルと同じものです。各章に対応するファイルへのリンクを置いています。
  • やりたいことが決まっているときは、ガイド から逆引きで探すこともできます。

インストール の手順で、juiz コマンドと、使う言語のパッケージを入れておいてください。 Python だけで進める場合は pip install juiz-cli で juiz コマンドと pyjuiz がそろい、Rust のツールチェーンは要りません(第 1 章でサンプル集の requirements.txt から入れます)。 Rust・C++ で進める場合は cargo install juiz_app で juiz コマンドを入れます。C++ ではさらに CMake と C++17 対応のコンパイラが必要です。

準備ができたら、はじめての Process に進みましょう。