Cloudflare Workers¶
Cloudflare Workers is a serverless edge computing platform provided by Cloudflare^[001-TODO__Cloudflare_Workers_自架短網址_-10_分鐘完工教學.md]. It allows developers to deploy code to a global network, eliminating the need to manage servers directly^[001-TODO__Cloudflare_Workers_自架短網址-_10_分鐘完工教學.md].
Core Features¶
- Global Deployment: Code is deployed to over 300 data centers worldwide^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]. This ensures that applications run close to users, reducing latency.
- Serverless Architecture: Developers can focus on writing code without worrying about the underlying infrastructure or server maintenance^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Versatile Response Handling: Workers can return various types of content, including JSON for APIs and standard HTML for web pages^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Routing and Custom Domains: The platform supports routing specific paths or entire custom domains through Worker scripts^[001-TODO__Cloudflare_Workers_自架短網址_-10_分鐘完工教學.md]. It automatically handles DNS and SSL certificates for these domains^[001-TODO__Cloudflare_Workers_自架短網址-_10_分鐘完工教學.md].
Development Workflow¶
Developers typically use wrangler, the official CLI tool, to manage Workers projects^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Project Creation: New projects can be initialized with a single command, creating the necessary file structure^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Local Development: Development is often done in [[TypeScript]], allowing for strong type checking^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Deployment: Code is deployed globally using a single command (e.g.,
wrangler deploy), pushing the application to the network^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
Data Storage: Cloudflare KV¶
Workers frequently integrate with Cloudflare KV (Key-Value Store), a distributed database optimized for the edge^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Structure: It is a simple key-value data store, making it ideal for lookups, such as mapping short URL codes to destination URLs^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Interaction: Workers interact with KV through bindings defined in configuration files (like
wrangler.jsonc), which allow the code to read and write data^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
Pricing and Limits¶
Cloudflare Workers offers a generous free tier suitable for personal projects^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- Requests: 100,000 requests per day^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- KV Reads: 100,000 read operations per day^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
- KV Writes: 1,000 write operations per day^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md].
Use Case: URL Shortener¶
A common application for Cloudflare Workers is a custom URL shortener^[001-TODO__Cloudflare_Workers_自架短網址_-10_分鐘完工教學.md].
* Logic: The Worker handles POST requests to generate short codes and store them in KV, while GET requests look up the code and perform an HTTP 302 redirect^[001-TODO__Cloudflare_Workers_自架短網址-10_分鐘完工教學.md].
* Frontend: Because Workers can return HTML, a frontend interface can be hosted directly within the Worker code, avoiding the need for a separate hosting service^[001-TODO__Cloudflare_Workers_自架短網址-_10_分鐘完工教學.md].
Sources¶
001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md