为什么选择 Deno Deploy?因为……为什么不呢?

  • 🚀 无需配置(是的,你没看错!)
  • 🌍 全球分布,开箱即用
  • ⚡ 冷启动速度极快
  • 🔒 默认安全(再也不用担心“哎呀,我忘了关后门”)
  • 🦕 基于 Deno,支持 TypeScript 和模块化

让我们开始这场无服务器的派对吧!

好了,是时候撸起袖子,深入代码了。但首先,为今天不需要编写的配置文件默哀片刻。

步骤 1:设置你的 Deno 环境

如果你还没有安装 Deno,安装它就像吃蛋糕一样简单(甚至更简单,因为谁真的从头开始做过蛋糕呢?):


# 对于 Mac/Linux 用户
curl -fsSL https://deno.land/x/install/install.sh | sh

# 对于 Windows 用户
iwr https://deno.land/x/install/install.ps1 -useb | iex

安装完成后,运行以下命令进行验证:


deno --version

步骤 2:创建你的无服务器函数

现在,让我们创建一个简单的“Hello, Serverless World!”函数。创建一个名为app.ts的文件,并添加以下代码:


import { serve } from "https://deno.land/[email protected]/http/server.ts";

function handler(req: Request): Response {
  const url = new URL(req.url);
  const name = url.searchParams.get("name") || "Serverless Enthusiast";
  return new Response(`Hello, ${name}! Welcome to the serverless party!`);
}

serve(handler);

看看这美丽的代码!没有本地文件系统的导入,没有 package.json,没有 node_modules 的黑洞。只有纯粹的无服务器之美。

步骤 3:部署到 Deno Deploy(令人惊叹,我知道)

神奇的部分来了。前往 https://dash.deno.com,登录并创建一个新项目。选择“从 URL 部署”,然后粘贴你的app.ts文件的原始 URL(例如,如果它在 GitHub 上)。

或者,你可以使用 Deno CLI 进行部署:


deno run --allow-read --allow-write --allow-env --allow-net --allow-run https://deno.land/x/deploy/deployctl.ts deploy --project=your-project-name app.ts

然后……请鼓掌……🥁

瞧!你已经无服务器了!

恭喜!你刚刚比微波炉爆米花的时间更快地部署了一个无服务器函数。你的应用现在运行在 Deno 的全球网络上,准备好从世界任何地方接收请求。

但等等,还有更多!

Deno Deploy 不仅仅是速度快(虽然它确实很快)。这里有一些很酷的功能,会让你成为无服务器领域的明星:

1. TypeScript?更像是 TypeRight!

Deno Deploy 开箱即支持 TypeScript。无需转译,无需配置文件,只需编写 TypeScript 并部署。就像 JavaScript,但更高级。

2. 模块,模块无处不在

忘记npm install。在 Deno Deploy 中,你可以直接从 URL 导入模块。就像把整个互联网当作你的包管理器。

3. WebAssembly 支持

想运行一些高性能代码?Deno Deploy 支持 WebAssembly,让你可以在无服务器函数中使用像 Rust 这样的语言的强大功能。

4. 内置键值存储

需要存储一些数据?Deno Deploy 包含一个内置的键值存储。就像拥有一个数据库,但没有数据库的麻烦。


import { Deno } from "https://deno.land/x/deno_deploy/mod.ts";

// 存储一个值
await Deno.kv.set(["users", "123"], { name: "Alice", age: 30 });

// 获取一个值
const user = await Deno.kv.get(["users", "123"]);
console.log(user);

潜在的陷阱(因为没有什么是完美的)

在你全力投入 Deno Deploy 之前,请记住以下几点:

  • 它不是 Node.js。如果你的项目严重依赖于 Node 特定的 API,你可能需要重构。
  • 生态系统正在成长,但仍然比 Node 小。你可能找不到所有你喜欢的 npm 包的直接替代品。
  • 冷启动时间很快,但不是零。对于极其敏感的应用程序,你可能需要考虑其他选项。

无服务器的底线

Deno Deploy 正在改变无服务器计算的游戏规则。它将无服务器的简单性与 Deno 的强大功能结合在一起,打包成一个全球分布的平台。无论你是在构建一个小型 API 还是一个完整的 Web 应用,Deno Deploy 都提供了一个值得考虑的平台。

所以,下次有人让你在几分钟内开发一个无服务器应用时,你可以自信地说:“看我的!”然后投入到 Deno Deploy 中。谁知道呢?你甚至可能有时间去泡一杯完美的咖啡。

“在无服务器的世界中,Deno Deploy 就像在电子游戏中找到一个捷径。突然间,一切都变得更简单、更快,也更有趣!”

准备好提升你的无服务器技能了吗?

这里有一些资源可以帮助你提升 Deno Deploy 技能:

现在去部署吧!你的无服务器冒险在等待,记住:强大的能力伴随着巨大的责任……去写出优秀的代码,给你的同事留下深刻印象。编码愉快!