TiDB CloudとCloudflare Workersを統合する
Cloudflare Workers 、HTTPリクエストやデータベースの変更といった特定のイベントに応じてコードを実行できるプラットフォームです。Cloudflare Workersは使いやすく、カスタムAPI、サーバーレス関数、マイクロサービスなど、さまざまなアプリケーションの構築に利用できます。特に、低遅延性能が求められるアプリケーションや、迅速なスケーリングが必要なアプリケーションに最適です。
Cloudflare WorkersはV8エンジン上で動作するため、直接TCP接続を確立できないため、Cloudflare WorkersからTiDB Cloudへの接続は難しい場合があります。TiDB TiDB CloudサーバーレスドライバーHTTP接続を介してCloudflare Workersに接続するのに役立ちます。 レス
このドキュメントでは、TiDB Cloudサーバーレスドライバーを使用してCloudflare Workersに接続する方法をステップバイステップで説明します。
注記:
TiDB Cloudのサーバーレスドライバーは、 TiDB Cloud StarterおよびTiDB Cloud Essentialでのみ使用できます。
始める前に
この記事の手順を試す前に、以下のものを準備する必要があります。
- TiDB Cloudアカウント。
- TiDB Cloud StarterまたはTiDB Cloud Essentialインスタンス。お持ちでない場合は、 TiDB Cloud StarterまたはEssentialインスタンスを作成します。参照してください。
- Cloudflare Workersアカウント。
- npmがインストールされています。
ステップ1:ラングラーをセットアップする
ラングラーCloudflare Worker の公式 CLI です。これを使用して、Worker の生成、構築、プレビュー、および公開を行うことができます。
Wranglerをインストールする:
npm install wranglerWranglerを認証するには、
wrangler loginを実行します。wrangler loginWranglerを使用してワーカープロジェクトを作成します。
wrangler init tidb-cloud-cloudflare端末に、プロジェクトに関する一連の質問が表示されます。すべての質問に対して、デフォルト値を選択してください。
ステップ2:サーバーレスドライバーをインストールする
プロジェクトディレクトリを入力してください:
cd tidb-cloud-cloudflarenpmを使用してサーバーレスドライバーをインストールします。
npm install @tidbcloud/serverlessこれにより
package.jsonにサーバーレスドライバの依存関係が追加されます。
ステップ3:Cloudflare Worker関数を開発する
src/index.tsは必要に応じて変更する必要があります。
例えば、すべてのデータベースを表示したい場合は、次のコードを使用できます。
import { connect } from '@tidbcloud/serverless'
export interface Env {
DATABASE_URL: string;
}
export default {
async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
const conn = connect({url:env.DATABASE_URL})
const resp = await conn.execute("show databases")
return new Response(JSON.stringify(resp));
},
};
ステップ4:環境設定でDATABASE_URLを設定します
DATABASE_URLはmysql://username:password@host/databaseの形式に従います。環境変数は wrangler cli を使用して設定できます。
wrangler secret put <DATABASE_URL>
Cloudflare Workers ダッシュボードからDATABASE_URLシークレットを編集することもできます。
ステップ5:Cloudflare Workersに公開する
これでCloudflare Workersへのデプロイ準備が整いました。
プロジェクトディレクトリで、以下のコマンドを実行してください。
npx wrangler publish
ステップ6:Cloudflare Workersを試してみる
Cloudflareダッシュボードに移動してワーカーを見つけます。ワーカーの URL は概要ページで確認できます。
そのURLにアクセスすれば、結果が表示されます。
例
Cloudflare Workersの例参照してください。