Cloudflare 免费动态托管对比Workers vs Pages

2023-10-12 02:20

本文主要是介绍Cloudflare 免费动态托管对比Workers vs Pages,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • Cloudflare 免费动态托管对比Workers vs Pages
    • 配置
      • Workers
      • Pages
    • 部署
      • Workers
      • Pages
    • 日志
    • 自定义域名
      • Workers
      • Pages
    • 小结
      • Workers
      • Pages

Cloudflare 免费动态托管对比Workers vs Pages

配置

Workers

通过 wrangler.toml 进行配置。

在这里插入图片描述

通过配置文件的话更加灵活,因为可以一个配置文件,部署多个 Worker,就有复用可能。

同时,配合 CLI 工具,可以更灵活的本地调试。

每个 Worker 代表着一个环境,所以环境变量通用,但可以进行加密。

在这里插入图片描述

除了可以在配置文件中配置 KV Namespace、 Durable Object (付费版功能),还可以绑定 Zone (域名),配置路由等。

Pages

通过页面上设置配置。

在这里插入图片描述

环境变量分为 Preview 和 Production 两种环境,分别设置。环境变量值均为明文。

在这里插入图片描述

Functions (即后端的 Worker 服务),可以绑定 KV Namespace 和 Durable Object(付费版)。

可以通过静态文件方式做映射配置自定义 Headers 和 Redirects (重定向)。

部署

Workers

通过 CLI 命令行工具 wrangler,同时也可以通过 CI/CD 流水线(需要额外配置)。

文档: https://developers.cloudflare.com/workers/cli-wrangler/commands#publish

Pages

通过 Push 自动触发,或者通过 Hooks 手动触发。

在这里插入图片描述

每次提交均会部署,可以访问不同的版本(长期保留,付费版本还可以设置加密预览),并且支持版本回滚。

日志

Workers 有, Pages 没有。

同时,由于 Pages 是个新产品,本地开发调试的时候并不是特别方便,很多时候我还在不停的往测试分支上提交代码,部署后查看实际的效果。部署的时间虽然挺快的,但也依然需要几分钟的等待。

自定义域名

Workers

叫路由 Routes,默认会分配 workers.dev 的域名,绑定也比较灵活。

Pages

默认分配 pages.dev 的域名, 可以绑定自定义域名。 自定义域名目前只能绑定给 Production。

还可以通过以下的方式去访问每次提交的部署:

  • ${hash}.${project}.pages.dev,如: https://efab10d3.willin-wang.pages.dev/
  • ${branch}.${project}.pages.dev,如: https://feat-i18n.willin-wang.pages.dev/

但是需要注意,不能给分支绑定自定义域名,如果需要 Beta 环境域名,则需要通过 Workers 反代的方式进行配置。

可以参考 Rocket Booster 配置反代。

小结

Workers

以前,Workers 也可以配合 KV 存储来搭建静态网站,而如今,有了更好的选择,就是 Cloudflare Pages。

适合两类产品:

  • 工具,比如反代
  • 服务,无服务器函数,包括缓存、数据库操作现在也在逐步的支持中

另外大型产品前后端分离过程中,可以使用 Workers 做很多实用的提升。

Pages

毫无疑问,适合带有前端页面的项目。同时,由于其 Functions 功能由 Workers 提供,所以能够实现产品的前后端服务。小型产品完全可以直接用 Pages 服务搭建。

这篇关于Cloudflare 免费动态托管对比Workers vs Pages的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/192561

相关文章

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

springboot如何通过http动态操作xxl-job任务

《springboot如何通过http动态操作xxl-job任务》:本文主要介绍springboot如何通过http动态操作xxl-job任务的问题,具有很好的参考价值,希望对大家有所帮助,如有错... 目录springboot通过http动态操作xxl-job任务一、maven依赖二、配置文件三、xxl-

关于MyISAM和InnoDB对比分析

《关于MyISAM和InnoDB对比分析》:本文主要介绍关于MyISAM和InnoDB对比分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录开篇:从交通规则看存储引擎选择理解存储引擎的基本概念技术原理对比1. 事务支持:ACID的守护者2. 锁机制:并发控制的艺

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

Java调用C#动态库的三种方法详解

《Java调用C#动态库的三种方法详解》在这个多语言编程的时代,Java和C#就像两位才华横溢的舞者,各自在不同的舞台上展现着独特的魅力,然而,当它们携手合作时,又会碰撞出怎样绚丽的火花呢?今天,我们... 目录方法1:C++/CLI搭建桥梁——Java ↔ C# 的“翻译官”步骤1:创建C#类库(.NET

MyBatis编写嵌套子查询的动态SQL实践详解

《MyBatis编写嵌套子查询的动态SQL实践详解》在Java生态中,MyBatis作为一款优秀的ORM框架,广泛应用于数据库操作,本文将深入探讨如何在MyBatis中编写嵌套子查询的动态SQL,并结... 目录一、Myhttp://www.chinasem.cnBATis动态SQL的核心优势1. 灵活性与可

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

Mybatis嵌套子查询动态SQL编写实践

《Mybatis嵌套子查询动态SQL编写实践》:本文主要介绍Mybatis嵌套子查询动态SQL编写方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、实体类1、主类2、子类二、Mapper三、XML四、详解总结前言MyBATis的xml文件编写动态SQL

Linux中的more 和 less区别对比分析

《Linux中的more和less区别对比分析》在Linux/Unix系统中,more和less都是用于分页查看文本文件的命令,但less是more的增强版,功能更强大,:本文主要介绍Linu... 目录1. 基础功能对比2. 常用操作对比less 的操作3. 实际使用示例4. 为什么推荐 less?5.