Cloudflare Workers支持WebAssembly和键值存储

栏目: 后端 · 前端 · 发布时间: 5年前

内容简介:Cloudflare最近宣布给他们的“无服务器”服务对于类似重定向到不同的URL或者是检查授权令牌这样的轻量级任务,使用纯JavaScript会比使用WASM更快更方便。WASM程序会在自己独立的内存空间中运作,这代表着有必要将数据从那个空间进进出出地复制,以进行操作。和外部对象交互为主,不需要做类似“数据处理”的代码最好不要用WASM。

Cloudflare最近宣布给他们的“无服务器”服务 Workers 新增两个附加功能:将WebAssembly作为JavaScript的替代方案,提供了 对WebAssembly的支持 ,以及称为 Workers KV 的键值存储。WebAssembly可以使Workers可以通过C、C++、Rust和 Go 等多种编译语言编写。Workers KV提供了最终一致状态存储机制,托管在Cloudflare全球超过150个数据中心的网络中。

WebAssembly (又称WASM)是由W3C开发的,它针对JavaScript提供了更快(解析和执行)更简捷的替代方案, 在2017年底进入到主流的几款浏览器中 。它实现了抽象的结构化堆栈机,具有一个中间的字节码表示。它可以保证代码可以用多种编译语言编写(或重用自多种编译语言),只需简单地将其编译为.wasm文件即可。但现在对于.wasm的 工具 链支持还不成熟,Cloudflare的 演示 中“如何搭建”这一部分中包含有“Build lld from source”的详细介绍。Cloudflare还尽心地指出,WebAssembly有时候“并不总是适用的”,他们解释了什么时候适合使用WebAssembly:

对于类似重定向到不同的URL或者是检查授权令牌这样的轻量级任务,使用纯JavaScript会比使用WASM更快更方便。WASM程序会在自己独立的内存空间中运作,这代表着有必要将数据从那个空间进进出出地复制,以进行操作。和外部对象交互为主,不需要做类似“数据处理”的代码最好不要用WASM。

另一方面,当需要执行资源消耗大的、独立的操作,比如说调整图像大小,处理音频流等操作时,WASM会有很大帮助。这些操作需要许多数学运算和恰当的内存管理。尽管也可以在纯JavaScript中运行这样的操作,像V8这样的引擎也花了很多功夫来优化这种代码,但是最终并不能打败拥有静态类型和显示分配的编译语言。

在Cloudflare发表的 《通过Workers KV搭建》 博文中,介绍了一系列我们可以用这项技术实现的功能例子。这些包括实现使用访问令牌的API Gateway、页面中的动态数据(如翻译)、功能标志的配置以及有状态的云功能。他们还详细介绍了限制和价格:

每个命名空间最多10亿个密钥

最多2 kB的键

最多64 kB的值

最终一致,10秒内实现全局一致

每秒每键100k+的读

每秒每键最多1次写

Workers每月5美元起,包括1 GB的KV存储以及最多1万千次KV读取。如果你Worker请求的使用少于1千万次,那不支付1分钱就可以使用KV。

如果最基础要求不能满足,Workers KV每个月超过套餐的存储按照0.5美元/1 GB收费,超过套餐的KV读取按照每次0.5美元收费。

Cloudflare将Worker和Amazon的Lambda进行比较,不过可能更加公平的是和 Lambda@Edge 进行比较,它在AWS CloudFront Content Delivery Network ( CDN )中运行函数。这两种情况下,服务都会提供第三端(在全局CDN边缘)进行处理,就不需要在浏览器(或API客户端)或源点进行处理。这样边缘托管的目的是通过接近客户端的入网点提供低延迟服务,同时让客户端不需要承担计算开销(以及安全问题)。通过启用有状态的服务,Cloudflare开启了originless(无源)服务的可能性,仅存在于没有集中源点的边缘。

在宣布Workers对于WebAssembly的支持之前,Cloudflare的CEO Matthew Prince 写推文 道:“从长远角度来看,这可能是整个月我们做出的最大行业变更声明了”。其他功能即服务(FaaS)平台以及可以提供多语言的支持的基础下,WebAssembly可能是让开发人员喜爱的一种简单方式,只要工具链问题在广泛采纳之后得到解决即可。

查看英文原文: Cloudflare WebAssembly and Key Value Store for Workers

感谢冬雨对本文的审校。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Trading and Exchanges

Trading and Exchanges

Larry Harris / Oxford University Press, USA / 2002-10-24 / USD 95.00

This book is about trading, the people who trade securities and contracts, the marketplaces where they trade, and the rules that govern it. Readers will learn about investors, brokers, dealers, arbit......一起来看看 《Trading and Exchanges》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具