程序园

标题: 一文介绍赛博菩萨Cloudflare到底能做些什么 [打印本页]

作者: admin    时间: 昨天 07:09
标题: 一文介绍赛博菩萨Cloudflare到底能做些什么
你用 AI 写完了一个小应用,现在需要部署上线、存储文件、管理数据库、调用 AI 模型…… 这些需求背后都需要基础设施。

大公司有自己的服务器,小开发者有什么?

Cloudflare。

Cloudflare 本质上是一个"互联网基础设施公司",原本以 CDN 和安全防护起家,但这几年它悄悄变成了小开发者最喜欢的全栈基础设施平台。 原因只有一个:免费额度慷慨,产品设计极简,全球边缘部署。

(乱入的小广告)

这个星球实际上是个我高频分享AI Coding 知识的社群











一、先搞清楚 CLOUDFLARE 能干什么



Cloudflare 的产品线很长,对初学者来说不需要全学,先记住这张地图:

Cloudflare 对小开发者有用的产品​




├── 域名 & 网络层│   ├── DNS 管理(免费,全球最快之一)│   └── CDN(静态资源加速,免费)│├── 部署 & 运行│   ├── Pages(前端静态托管,类似 Vercel)│   └── Workers(后端逻辑,Serverless 函数)│├── 存储│   ├── R2(对象存储,S3 兼容,无出流量费)│   ├── KV(键值存储,适合配置/缓存)│   └── D1(SQLite 数据库,Serverless)│└── AI 专属    ├── AI Gateway(AI API 代理,限速/缓存/监控)    ├── Workers AI(边缘运行 AI 模型)    └── Vectorize(向量数据库,RAG 必备)


接下来逐个讲解。

二、DNS 管理:把你的域名交给 CLOUDFLARE

它是什么?

DNS 就是"域名系统",把 yourapp.com
翻译成服务器 IP 地址。 Cloudflare 提供免费的 DNS 托管,是目前全球响应速度最快的 DNS 之一。

为什么用?

怎么用?

注意:改 Nameserver 是把 DNS 控制权转移给 Cloudflare,域名本身还在原来的注册商,不影响续费。




三、CLOUDFLARE PAGES:免费的前端部署平台











它是什么?

Pages 是 Cloudflare 的静态网站托管服务,类似于 Vercel 或 Netlify。 你把代码推到 GitHub,它自动构建并部署到全球 CDN。

适合什么场景?

免费额度











无限带宽是关键——很多竞品按流量收费,Cloudflare Pages 不收。

怎么部署?




# 方法一:连接 GitHub(推荐)# 在 Cloudflare Dashboard → Pages → 创建项目 → 连接 GitHub 仓库# 选择构建命令和输出目录,完成。​# 方法二:用 Wrangler CLI(本地工具)npm install -g wranglerwrangler pages deploy ./dist


与 Vercel 怎么选?

四、CLOUDFLARE WORKERS:边缘 SERVERLESS 后端

它是什么?

Workers 是 Cloudflare 的 Serverless 计算平台。 你写一段 JavaScript(或 TypeScript、Python、Rust),它运行在全球 300+ 个节点上,而不是某个固定的服务器。

这意味着:用户在哪里,代码就在哪里运行,延迟极低。

适合什么场景?

免费额度











对于初期项目,10万次/天基本够用。

一个最简单的 Worker




// src/index.jsexport default {  async fetch(request) {    const url = new URL(request.url);        if (url.pathname === '/api/hello') {      return Response.json({ message: 'Hello from Cloudflare Workers!' });    }        return new Response('Not Found', { status: 404 });  }};# wrangler.tomlname = "my-worker"main = "src/index.js"compatibility_date = "2024-01-01"# 部署wrangler deploy


就这样,你的 API 上线了,跑在全球边缘节点上。

Workers 的局限

五、CLOUDFLARE R2:没有出流量费的对象存储

它是什么?

R2 是 Cloudflare 的对象存储服务,完全兼容 Amazon S3 的 API。 也就是说,你原来写的 S3 代码,改几行配置就能用 R2。

为什么特别值得关注?

AWS S3 的一大"隐形成本"是出流量费(Egress Fee)——每次用户下载文件,你都要按流量付钱。 如果你的应用有大量图片、视频或文件下载,这个费用会很高。

R2 的出流量完全免费。  这对有文件存储需求的 AI 应用来说意义重大。

免费额度











适合存什么?

用代码访问 R2

六、CLOUDFLARE D1:SERVERLESS SQLITE 数据库

它是什么?

D1 是 Cloudflare 的 Serverless SQL 数据库,底层是 SQLite。 它可以直接在 Workers 里查询,不需要单独的数据库连接池管理。

适合什么场景?

免费额度











怎么用?




# 创建数据库wrangler d1 create my-database​# 运行 SQL 迁移wrangler d1 execute my-database --file ./schema.sql-- schema.sqlCREATE TABLE users (  id INTEGER PRIMARY KEY AUTOINCREMENT,  email TEXT UNIQUE NOT NULL,  created_at DATETIME DEFAULT CURRENT_TIMESTAMP);// 在 Worker 中查询export default {  async fetch(request, env) {    const { results } = await env.DB.prepare(      'SELECT * FROM users WHERE email = ?'    ).bind('user@example.com').all();        return Response.json(results);  }};


D1 vs 其他数据库

D1PlanetScaleSupabase类型SQLiteMySQLPostgreSQL冷启动无有有Workers 集成原生需配置需配置免费额度充足充足充足适合场景中小应用高并发写入复杂关系型

七、CLOUDFLARE KV:全局键值存储

它是什么?

KV 是一个分布式键值数据库,数据写入后会同步到全球所有边缘节点,读取极快。

适合存什么?

不适合什么?

免费额度

操作免费额度读取1000 万次 / 天写入/删除/列表10 万次 / 天存储1 GB




// 读写 KVexport default {  async fetch(request, env) {    // 写入    await env.MY_KV.put('user:123:session', 'token-xyz', {      expirationTtl: 3600  // 1小时后过期    });        // 读取    const session = await env.MY_KV.get('user:123:session');        return new Response(session);  }};


八、CLOUDFLARE AI GATEWAY:AI 项目必装的"中间层"

它是什么?

AI Gateway 是专门为 AI 应用设计的 API 代理层。 你不直接调用 OpenAI / Anthropic / Gemini,而是通过 Cloudflare 的网关转发——它帮你记录日志、统计费用、缓存相同请求、设置限流。

为什么 AI 项目需要它?

做 AI 应用最头疼的几个问题:

AI Gateway 一次性解决这四个问题。

支持哪些 AI 服务?

OpenAI、Anthropic Claude、Google Gemini、Azure OpenAI、Mistral、Cohere、Hugging Face、Replicate......几乎覆盖所有主流 AI 服务。

怎么接入?

只需要改一个 URL,其他代码完全不变:




// 原来直接调用 OpenAIconst openai = new OpenAI({  apiKey: process.env.OPENAI_API_KEY,  // baseURL 默认是 https://api.openai.com/v1});​// 改为通过 AI Gateway 代理const openai = new OpenAI({  apiKey: process.env.OPENAI_API_KEY,  baseURL: 'https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_name}/openai',});​// 调用方式完全一样const response = await openai.chat.completions.create({  model: 'gpt-4o',  messages: [{ role: 'user', content: 'Hello!' }],});


改完之后,所有请求都会经过 Cloudflare 的节点,你在 Dashboard 就能看到:

缓存功能




// 开启语义缓存——相似的问题复用之前的答案const response = await fetch(gatewayUrl, {  method: 'POST',  headers: {    'cf-aig-cache-ttl': '3600',  // 缓存 1 小时  },  body: JSON.stringify({ messages: [...] }),});


免费额度

AI Gateway 目前完全免费,不限请求次数(Cloudflare 把它作为吸引开发者的入口)。

九、WORKERS AI:在边缘运行 AI 模型

它是什么?

Workers AI 是 Cloudflare 提供的"边缘推理"服务,你可以直接在 Workers 里调用各种 AI 模型,不需要自己部署 GPU 服务器。

支持哪些模型?

适合什么场景?

代码示例




export default {  async fetch(request, env) {    // 文本生成    const response = await env.AI.run('@cf/meta/llama-3-8b-instruct', {      messages: [        { role: 'user', content: '用一句话解释什么是 Cloudflare Workers' }      ],    });        return Response.json(response);  }};// 生成文本嵌入(用于 RAG)const embeddings = await env.AI.run('@cf/baai/bge-base-en-v1.5', {  text: ['这是要转换成向量的文本'],});​// embeddings.data[0] 就是向量数组


免费额度

功能免费额度神经元(计算单位)每天 10,000 神经元

实际等价于每天可以免费跑几百次小模型推理,够用于开发测试。

十、VECTORIZE:向量数据库(做 RAG 必备)

它是什么?

Vectorize 是 Cloudflare 的向量数据库。 向量数据库存储的不是普通数据,而是文本/图片被 AI 模型转换成的"语义向量",用于做相似度搜索。

做 RAG(检索增强生成)应用必然用到向量数据库。

工作流程

1. 把你的文档喂给嵌入模型 → 得到向量2. 把向量存到 Vectorize3. 用户提问 → 把问题转成向量 → 在 Vectorize 里找最相近的文档片段4. 把相关文档 + 用户问题一起发给 LLM → 得到有依据的回答

代码示例




// 插入向量await env.VECTORIZE.insert([  {    id: 'doc-001',    values: [0.12, 0.55, 0.88, ...],  // 嵌入模型输出的向量    metadata: { text: '文档原文内容', source: 'article-1.pdf' }  }]);​// 相似度搜索const results = await env.VECTORIZE.query(queryVector, {  topK: 5,           // 返回最相近的 5 条  returnMetadata: true,});


免费额度

功能免费额度向量数量30,000 个每月查询3000 万次维度上限1536 维(够用 OpenAI embedding)

十一、一个完整 AI 应用的 CLOUDFLARE 全家桶架构

把上面所有产品串起来,一个典型的小型 AI 应用架构长这样:




用户浏览器    │    ▼Cloudflare Pages(前端,React/Next.js)    │    ▼Cloudflare Workers(API 层,处理请求逻辑)    │    ├──▶ AI Gateway ──▶ OpenAI / Claude(外部 AI 服务)    │    ├──▶ Workers AI(边缘运行开源模型)    │    ├──▶ Vectorize(语义搜索,RAG)    │    ├──▶ D1(用户数据、内容存储)    │    ├──▶ KV(Session、缓存)    │    └──▶ R2(图片、文件存储)


整套架构的月费用:

这就是为什么独立开发者都爱 Cloudflare——几乎零成本就能跑一个生产级的 AI 应用架构。

十二、快速上手路线图

第一步:注册账号,迁移域名 DNS

第二步:安装 Wrangler CLI




npm install -g wranglerwrangler login


第三步:部署第一个 Worker




npm create cloudflare@latest my-first-workercd my-first-workerwrangler dev    # 本地开发wrangler deploy # 上线


第四步:按需添加存储




# 创建 D1 数据库wrangler d1 create my-db​# 创建 R2 Bucketwrangler r2 bucket create my-files​# 创建 KV Namespacewrangler kv namespace create my-cache


第五步:接入 AI Gateway






欢迎光临 程序园 (https://www.cxy5.com/) Powered by Discuz! X3.5