Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Upstash

最終更新 Markdown で表示Agent セットアップ

Upstash は、Redis* と Kafka API を備えたサーバーレスデータベースです。Upstash は、サーバーレス向けに設計されたタスクキュー / スケジューラーの QStash も提供します。

Upstash for Redis

Upstash との連携を設定する手順は次のとおりです。

  1. 接続先となる既存の Upstash データベースが必要です。Upstash データベースを作成する か、既存データベースのデータを Upstash に読み込む ことができます。

  2. Upstash データベースにデータを入れます。データの追加方法は次の 2 通りです。

    • Upstash コンソールから CLI を直接使います。
    • または、ローカルに redis-cli をインストールし、次のコマンドを実行します。
    set GB "Ey up?"
    OK
    set US "Yo, what’s up?"
    OK
    set NL "Hoi, hoe gaat het?"
    OK
  3. Worker に Upstash Redis の認証情報を設定します。

    Upstash Redis のデータベース URL とトークンを、Worker のシークレットとして追加する必要があります。Upstash Console のデータベース詳細から取得し、Wrangler でシークレットとして追加します。

    # Add the Upstash Redis URL as a secret
    npx wrangler secret put UPSTASH_REDIS_REST_URL
    # When prompted, paste your Upstash Redis REST URL
    
    # Add the Upstash Redis token as a secret
    npx wrangler secret put UPSTASH_REDIS_REST_TOKEN
    # When prompted, paste your Upstash Redis REST token
  4. Worker で @upstash/redis をインストールします。データベースに接続し、データを操作するための HTTP クライアントです。

    npm i @upstash/redis
  5. 次の例は、Worker から Upstash データベースへクエリする流れです。Upstash への接続に必要な認証情報は、シークレットとして Worker に追加済みです。

    import { Redis } from "@upstash/redis/cloudflare";
    
    export default {
    	async fetch(request, env) {
    		const redis = Redis.fromEnv(env);
    
    		const country = request.headers.get("cf-ipcountry");
    		if (country) {
    			const greeting = await redis.get(country);
    			if (greeting) {
    				return new Response(greeting);
    			}
    		}
    
    		return new Response("Hello What's up!");
    	},
    };

Upstash の詳細は Upstash のドキュメント を参照してください。

Upstash QStash

Upstash QStash との連携を設定する手順は次のとおりです。

  1. メッセージの送信先となる 公開 HTTP エンドポイント を設定します。

  2. Worker に Upstash QStash の認証情報を設定します。

    Upstash QStash のトークンを Worker のシークレットとして追加する必要があります。Upstash Console の QStash 設定からトークンを取得し、Wrangler でシークレットとして追加します。

    # Add the QStash token as a secret
    npx wrangler secret put QSTASH_TOKEN
    # When prompted, paste your QStash token
  3. Worker で @upstash/qstash をインストールします。QStash エンドポイントに接続するための HTTP クライアントです。

    npm i @upstash/qstash
  4. Cloudflare Worker で QStash からの webhook を受け取る方法は、Upstash のドキュメント を参照してください。

* Redis は Redis Ltd. の商標です。その権利は Redis Ltd. に帰属します。Upstash による使用は参照目的のみであり、Redis と Upstash の間にスポンサーシップ、推奨、提携があることを示すものではありません。

役に立ちましたか?