← Cloudflare Workers / workers / local-development
Vývoj s více Workery
Při vývoji komplexních aplikací může být užitečné spouštět více Workerů současně. Tento návod popisuje různé způsoby lokálního spouštění více Workerů a kdy který způsob použít.
Jediný vývojový příkaz
Více Workerů můžete spustit jedním vývojovým příkazem tak, že vývojovému serveru předáte více konfiguračních souborů:
Používání Wrangleru
npx wrangler dev -c ./app/wrangler.jsonc -c ./api/wrangler.jsoncPrvní konfigurace (./app/wrangler.jsonc) se považuje za primární Worker a je vystavený na http://localhost:8787. Další konfigurace (např. ./api/wrangler.jsonc) běží jako pomocné Workery, dostupné z primárního Workeru přes service bindings nebo tail consumers.
Použití pluginu Vite
Nakonfigurujte auxiliaryWorkers v konfiguraci Vite:
import { defineConfig } from "vite";
import { cloudflare } from "@cloudflare/vite-plugin";
export default defineConfig({
plugins: [
cloudflare({
configPath: "./app/wrangler.jsonc",
auxiliaryWorkers: [
{
configPath: "./api/wrangler.jsonc",
},
],
}),
],
});Poté spusťte:
npx vite devTento přístup použijte, pokud:
- Chcete co nejjednodušší nastavení pro vývoj
- Workers jsou součástí stejné aplikace nebo stejného zdrojového kódu
- Potřebujete přistupovat k namespace Durable Object nebo k Workflow z jiného Workeru pomocí
script_name, nebo nastavte Queues, kde jsou producentský a konzumentský Worker oddělené.
Více vývojových příkazů
Každý Worker můžete také spustit v samostatných příkazech dev, každý s vlastním terminálem a konfigurací.
# Terminal 1
npx wrangler dev -c ./app/wrangler.jsonc# Terminal 2
npx wrangler dev -c ./api/wrangler.jsoncTyto Workers běží v různých vývojových příkazech, ale přesto mohou navzájem komunikovat prostřednictvím service bindings nebo tail consumers bez ohledu na to, zda začínají na wrangler dev nebo vite dev.
Tento přístup použijte, pokud:
- Chcete, aby byl každý Worker během vývoje dostupný na vlastní lokální URL adrese, protože při použití jediného příkazu dev je vystavený pouze primární Worker
- Každý Worker má vlastní sestavovací proces a nástroje, například jeden používá Vite s vlastními pluginy, zatímco jiný je čistý projekt Wrangler
- Potřebujete flexibilitu spouštět a vyvíjet Workery nezávisle na sobě, aniž byste museli přestavovat projekt nebo slučovat konfigurace
Toto nastavení se hodí zejména u větších projektů, kde každý tým spravuje podmnožinu Workers. Spuštění všeho v jediném dev příkazu by mohlo vyžadovat výraznou restrukturalizaci nebo integraci buildu, což není vždy praktické.