INTEGRITY Dokumentace

Hyperdrive (Postgres a MySQL)

Proměňte svou stávající regionální databázi v globálně distribuovanou databázi.

Dostupné v plánu Free a v placených plánech

Hyperdrive je služba, která zrychluje dotazy do vašich stávajících databází, díky čemuž je přístup k vašim datům z celého světa rychlejší z Cloudflare Workers, bez ohledu na polohu vašich uživatelů.

Hyperdrive podporuje libovolnou databázi Postgres nebo MySQL, včetně těch hostovaných na AWS, Google Cloud, Azure, Neon a PlanetScale. Hyperdrive také podporuje databáze kompatibilní s Postgres, jako jsou CockroachDB a Timescale. Nemusíte psát nový kód ani nahrazovat oblíbené nástroje: Hyperdrive funguje s vaším stávajícím kódem i nástroji, které již používáte.

Použijte údaje o připojení Hyperdrive z vaší aplikace Cloudflare Workers se svými stávajícími databázovými ovladači a knihovnami pro objektově-relační mapování (ORM).

Příklady

PostgreSQL

import { Client } from "pg";

export default {
	async fetch(request, env, ctx): Promise<Response> {
		// Create a new client instance for each request. Hyperdrive maintains the
		// underlying database connection pool, so creating a new client is fast.
		const client = new Client({
			connectionString: env.HYPERDRIVE.connectionString,
		});

		try {
			// Connect to the database
			await client.connect();
			// Sample SQL query
			const result = await client.query("SELECT * FROM pg_tables");

			return Response.json(result.rows);
		} catch (e) {
			return Response.json({ error: e instanceof Error ? e.message : e }, { status: 500 });
		}
	},
} satisfies ExportedHandler<{ HYPERDRIVE: Hyperdrive }>;
	{
		"$schema": "node_modules/wrangler/config-schema.json",
		"name": "WORKER-NAME",
		"main": "src/index.ts",
		"compatibility_date": "2025-02-04",
		"compatibility_flags": [
			"nodejs_compat"
		],
		"observability": {
			"enabled": true
		},
		"hyperdrive": [
			{
				"binding": "HYPERDRIVE",
				"id": "<YOUR_HYPERDRIVE_ID>",
				"localConnectionString": "<ENTER_LOCAL_CONNECTION_STRING_FOR_LOCAL_DEVELOPMENT_HERE>"
			}
		]
	}

MySQL

import { createConnection } from 'mysql2/promise';

export default {
  async fetch(request, env, ctx): Promise<Response> {
    // Create a new connection on each request. Hyperdrive maintains the
    // underlying database connection pool, so creating a new client is fast.
    const connection = await createConnection({
		 host: env.HYPERDRIVE.host,
		 user: env.HYPERDRIVE.user,
		 password: env.HYPERDRIVE.password,
		 database: env.HYPERDRIVE.database,
		 port: env.HYPERDRIVE.port,

     // This is needed to use mysql2 with Workers
     // This configures mysql2 to use static parsing instead of eval() parsing (not available on Workers)
     disableEval: true
  });

  const [results, fields] = await connection.query('SHOW tables;');

  return new Response(JSON.stringify({ results, fields }), {
    headers: {
      'Content-Type': 'application/json',
      'Access-Control-Allow-Origin': '\*',
    },
  });
}} satisfies ExportedHandler<{ HYPERDRIVE: Hyperdrive }>;
	{
		"$schema": "node_modules/wrangler/config-schema.json",
		"name": "WORKER-NAME",
		"main": "src/index.ts",
		"compatibility_date": "2025-02-04",
		"compatibility_flags": [
			"nodejs_compat"
		],
		"observability": {
			"enabled": true
		},
		"hyperdrive": [
			{
				"binding": "HYPERDRIVE",
				"id": "<YOUR_HYPERDRIVE_ID>",
				"localConnectionString": "<ENTER_LOCAL_CONNECTION_STRING_FOR_LOCAL_DEVELOPMENT_HERE>"
			}
		]
	}
Začínáme

Funkce

Připojte svou databázi

Připojte Hyperdrive ke stávající databázi a nasaďte Worker dotazující se na ni.

Podpora PostgreSQL

Hyperdrive umožňuje připojit se k libovolné databázi PostgreSQL nebo databázi kompatibilní s PostgreSQL.

Podpora MySQL

Hyperdrive umožňuje připojit se k libovolné databázi MySQL.

Ukládání dotazů do mezipaměti

Ve výchozím stavu zapnuté cachování pro nejoblíbenější dotazy spouštěné na vaší databázi.


Workers

Vytvářejte serverless aplikace a nasazujte je okamžitě po celém světě, a získejte tak výjimečný výkon, spolehlivost a škálovatelnost.

Pages

Nasaďte dynamické front-endové aplikace v rekordním čase.


Další zdroje

Ceny

Zjistěte více o cenách Hyperdrive.

Limity

Zjistěte více o limitech Hyperdrive.

Možnosti úložiště

Přečtěte si více o možnostech úložiště a databází, na kterých můžete stavět s Workers.

Developer Discord

Zapojte se do komunity Workers na Discordu, pokládejte otázky, ukazujte, co tvoříte, a diskutujte o platformě s dalšími vývojáři.

@CloudflareDev

Sledujte @CloudflareDev na Twitteru a dozvíte se o novinkách v produktech a co je nového na Cloudflare Developer Platform.

Obsah

64 stránek zrcadlených z dokumentace Cloudflare pro hyperdrive.

Pages

Základní pojmy

Konfigurace

Příklady

Observabilita

Platforma

Referenční informace

Návody