← Cloudflare Queues / queues / konfigurace
Lokální vývoj
Queues podporují místní vývojové postupy pomocí Wrangler, rozhraní příkazové řádky pro Workers. Wrangler používá stejnou verzi Queues, jakou Cloudflare provozuje globálně.
Předpoklady
Chcete-li lokálně vyvíjet s Queues, budete potřebovat:
-
Wrangler v3.1.0 ↗ nebo novější.
-
Node.js verze
18.0.0nebo novější. Zvažte použití správce verzí Node, jako je Volta ↗ nebo nvm ↗ abyste se vyhnuli problémům s oprávněními a mohli měnit verze Node. -
Pokud se Queues nebo Cloudflare Workers teprve učíte poznávat, přečtěte si Návod na Queues k instalaci
wranglera nasadit svou první frontu.
Spusťte místní vývojovou relaci
Otevřete terminál a spuštěním následujících příkazů zahajte místní vývojovou relaci:
npx wrangler@latest dev------------------
Your Worker and resources are simulated locally via Miniflare. For more information, see: https://developers.cloudflare.com/workers/testing/local-development.
Your worker has access to the following bindings:
- Queues: <QUEUE-NAME>Relace místního vývoje vytvoří samostatné, čistě lokální prostředí, které odpovídá produkčnímu prostředí, ve kterém Queues běží, abyste mohli testovat své Workery před nasadíte do produkčního prostředí.
Viz wrangler dev dokumentace a dozvíte se více o konfiguraci relace lokálního vývoje.
Oddělení producentských a konzumentských Workerů
Wrangler umožňuje spustit více Workerů současně jediným příkazem. Pokud vaše architektura odděluje producenta a konzumenta do samostatných Workerů, můžete tuto funkci využít k lokálnímu otestování celého toku zpráv.
Pokud má váš projekt například následující strukturu adresářů:
producer-worker/
├── wrangler.jsonc
├── index.ts
└── consumer-worker/
├── wrangler.jsonc
└── index.tsVývojové servery pro oba workery spustíte následujícím příkazem:
npx wrangler@latest dev -c wrangler.jsonc -c consumer-worker/wrangler.jsonc --persist-to .wrangler/stateJakmile Worker producenta odešle zprávy do fronty, automaticky se vyvolá Worker konzumenta, který je zpracuje.
Známé problémy
- Queues nepodporují vzdálený režim Wrangler (
wrangler dev --remote).