TiDB CloudとCloudflare Workersを統合する
Cloudflare Workersは、HTTPリクエストやデータベースへの変更など、特定のイベントに応じてコードを実行できるプラットフォームCloudflareワーカー 。Cloudflare Workersは使いやすく、カスタムAPI、サーバーレス関数、マイクロサービスなど、さまざまなアプリケーションの構築に使用できます。特に、低レイテンシーのパフォーマンスが求められるアプリケーションや、迅速なスケーリングが必要なアプリケーションに便利です。
Cloudflare WorkersはV8エンジンで動作しており、直接TCP接続ができないため、 TiDB Cloudへの接続が難しい場合があります。1 TiDB Cloudサーバーレス ドライバー使用すると、HTTP接続経由でCloudflare Workersに接続できます。
このドキュメントでは、TiDB Cloudサーバーレス ドライバーを使用して Cloudflare Workers に接続する方法を段階的に説明します。
注記:
TiDB Cloudサーバーレス ドライバーは、TiDB Cloud Starter およびTiDB Cloud Essential でのみ使用できます。
始める前に
この記事の手順を試す前に、次のものを準備する必要があります。
- A TiDB Cloudアカウント 。
- TiDB Cloud Starter またはTiDB Cloud Essential クラスター。お持ちでない場合は、 TiDB Cloud StarterまたはEssential クラスタを作成する参照してください。
- A Cloudflare Workersアカウント 。
- npmがインストールされています。
ステップ1: Wranglerを設定する
ラングラーは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の例参照してください。