type
status
date
slug
summary
tags
category
icon
password
😀
一直听闻 CloudFlare 作为互联网界的赛博佛祖,给开发者提供了大量的免费服务,今天就来尝试一下 CloudFlare 提供的Cloudflare Workers。

什么是Cloudflare Workers

Cloudflare Workers 是 Cloudflare 提供的一种 Serverless 执行环境,允许你在 Cloudflare 部署和执行 JavaScript、Rust、C 、 C++(在今年,Cloudflare Workers也只支持了 Python)等编写的代码。Workers 基于 V8 引擎(也就是 Google Chrome 浏览器所使用的 JavaScript 引擎)运行。
Serverless 是一种云计算执行模型,它允许开发者编写和部署代码而不需要管理底层服务器的配置、维护或扩展。这种模型使开发者能够更专注于代码逻辑本身,而不是服务器的运维。比如你想开发一个图片处理服务,用户上传图片后可以自动调整大小、添加水印,你可以仅编写一个处理图片的函数,将其部署到 Serverless 平台来提供服务。而传统服务器模式则需要你先准备好一个服务器,安装操作系统和一些必要的软件,部署一个图片处理的服务,定期维护软件,监控服务器性能等。与传统模式相比,Serverless 有如下优势:
  • 成本低廉:由于按使用付费,对于低到中等流量的应用,可以显著降低成本。
  • 开发效率高:开发者可以快速部署和更新代码,无需管理服务器。
  • 可扩展性:无需预先配置资源,服务可以根据需要自动扩展。

如何使用Cloudflare Workers

第一步:注册 Cloudflare 账户

  1. 访问 Cloudflare 官网。
  1. 点击右上角的“注册”按钮。
  1. 按照提示输入你的电子邮件地址和密码,创建一个新账户。

第二步:设置 Cloudflare Workers

  1. 登录 Cloudflare 账户。
  1. 在 Cloudflare 的控制面板中,找到“Workers”选项并点击。
  1. 如果你是第一次使用 Cloudflare Workers,需要为 Workers 服务设置一个子域名。这个子域名将是你所有 Workers 的基础URL。

第三步:创建一个新的 Worker

notion image
  1. 在 Workers 控制台中,点击“创建 Worker”。
  1. 你将被引导至一个在线编辑器,这里已经包含了一个简单的示例 Worker 脚本。默认代码为:
    1. 你可以修改上述代码中的 fetch 函数返回的响应内容,比如改为返回 Hello, World!
    1. 点击 Finish来部署代码。

    第四步:测试 Worker

    notion image
    1. 部署完成后,Cloudflare 会提供一个 URL,通常是 [你的子域名].workers.dev 的形式。
    1. 复制这个 URL 并在新的浏览器标签页中打开它,你应该能看到你的 Worker 返回的内容,例如 "Hello, World!"。

    第五步:编辑代码

    使用Cloudflare Workers当然不仅仅满足于基本的 Hello world.我们需要做些更加有趣的事情,点击 Edit Code进入代码编辑页面。
    notion image
    在这里你可以在左侧界面修改你的代码。在右侧可以测试代码,通过 HTTP Tab 页你可以对你当前的Cloudflare Workers发送请求来测试代码是否能正常运行。
    比如我们来编写一个实现一个简单加减运算的project:
    在 worker.js 部分放上以下代码:
    在 HTTP 一栏通过
    https://your-subdomain.workers.dev/?operation=add&num1=10&num2=5
    https://your-subdomain.workers.dev/?operation=subtract&num1=10&num2=5
    来访问(注意将其中的链接替换成你自己的链接)
    notion image
    至此就是 Cloudflare Workers的一些基本用法,CloudFlare 也提供了一些常用模板可以快速实现一些函数功能,有需要可以直接使用,避免重复造轮子。
    notion image
    然而在线编辑器的功能总是不尽如人意,如果想通过 VSCode等本地编辑器进行开发,则需要用到Wrangler-一款 Cloudflare 提供的命令行工具,可以用于开发、配置和发布你的Cloudflare Workers项目。

    使用 Wrangler 在本地开发Cloudflare Workers项目

    前提条件

    1. 注册 Cloudflare 账户Cloudflare 账户注册
    1. 安装 Node.js 和 npmNode.js 官方网站

    安装 Wrangler

    在终端中运行以下命令安装 Wrangler:

    初始化项目

    1. npm create cloudflare@latest 创建一个新项目:
      1. 或者直接通过下面命令用现有的模板来创建项目(SOURCE中可以是 GitHub 链接):
        • 根据提示选择项目名称。
        • 选择 “Hello World” 模板。
        • 选择使用 JavaScript 或 TypeScript(本教程使用 JavaScript)。
    1. 进入项目目录:

      开发和测试

      通过 VsCode 等本地编辑器打开项目,编辑代码。
      notion image
      1. 本地开发:在项目目录中运行:
        1. 这将会启动本地开发服务器,你可以在浏览器中访问 http://localhost:8787 查看本地运行的项目。

      部署到 Cloudflare

      1. 部署项目:在项目目录中运行:
        1. 这会将你的 Worker 部署到 Cloudflare。
      1. 访问部署的 Worker:部署成功后,Cloudflare 会提供一个 URL(例如 https://your-project-name.your-subdomain.workers.dev),你可以在浏览器中访问这个 URL 来查看你的 Worker。

      进一步探索

      以上就是Cloudflare Workers的一些基本玩法,你可以通过 Cloudflare Workers 文档 获取更多信息和高级用法。

      📎 参考文章

       
      BTC 数据结构的 Java 实现我的博客搭建之旅