Blueboat Cloudflare Workers 的开源替代品开源项目

我要开发同款
匿名用户2021年11月25日
158阅读
开发技术Rust
所属分类Serverless系统、云计算、Serverless 系统
授权协议AGPLv3

作品详情

Cloudflare 通过 CloudflareWorkers 提供无服务器计算服务,后者是用于构建和部署在 Cloudflare 边缘网络上运行的JavaScript函数的平台。在边缘(尽可能靠近最终用户)运行代码有助于减少延迟并提高应用程序性能。每个 Worker 都可以修改并响应HTTP请求。

Blueboat就是CloudflareWorkers的开源替代品,旨在成为无服务器Web应用开发者友好的多租户平台。

一个简单的Blueboat应用程序如下所示:

Router.get("/",req=>newResponse("helloworld"));Router.get("/example",req=>{returnfetch("https://example.com");});Router.get("/yaml",req=>{constres=TextUtil.Yaml.stringify({hello:"world",});returnnewResponse(res);});使用托管服务的快速入门安装 bbcli对于Linux:

curl-sSL-o/tmp/bbcli.tar.gzhttps://github.com/losfair/bbcli/releases/download/v0.1.0-alpha.1/bbcli_linux.tar.gztar-xzvf/tmp/bbcli。tar.gz-C~chmod+x~/bbcli&&rm/tmp/bbcli.tar.gz对于macOS:

curl-sSL-o/tmp/bbcli.tar.gzhttps://github.com/losfair/bbcli/releases/download/v0.1.0-alpha.1/bbcli_macos.tar.gztar-xzvf/tmp/bbcli。tar.gz-C~chmod+x~/bbcli&&rm/tmp/bbcli.tar.gz克隆示例项目gitclonehttps://github.com/losfair/blueboat-examples部署项目cdblueboat-examples/hello-worldnpmi~/bbclideploy--vars./hosted.vars.yaml部署Blueboat实例先决条件Docker用于存储应用程序配置和代码的S3兼容bucket用于存储 bbcp 元数据的MySQL服务(可选)用于流式传输日志的Kafka服务部署示例:

version:"3"services:blueboat:image:ghcr.io/losfair/blueboat:latestuser:daemonports:-"127.0.0.1:3000:3000"entrypoint:-/usr/bin/blueboat_server--l-0.0.0.0:3000---s3-bucket-my-bucket.example.com---s3-region-us-east-1#Uncommentthisifyouuseanon-AWSS3-compatibleservice.#---s3-endpoint#-https://minio.example.com#UncommentthistoenableloggingtoKafka.#---log-kafka#-net.univalent.blueboat-log.default:0@kafka:9092#Uncommentthistoenablegeoipinformationinthe`x-blueboat-client-country`,#`x-blueboat-client-city`,`x-blueboat-client-subdivision-1`and#`x-blueboat-client-subdivision-2`requestheaders.#---mmdb-city#-/opt/blueboat/mmdb/GeoLite2-City.mmdb#UncommentthistoenableautomaticWikipediaIPblocklistqueryinthe#`x-blueboat-client-wpbl`requestheader.#Thedatabaseisgeneratedwithhttps://github.com/losfair/wpblsync.#---wpbl-db#-/opt/blueboat/wpbl/wpbl.dbenvironment:RUST_LOG:infoAWS_ACCESS_KEY_ID:your_s3_access_key_idAWS_SECRET_ACCESS_KEY:your_s3_secret_access_key#Uncommentthistoenabletextrenderingincanvas.#SMRAPP_BLUEBOAT_FONT_DIR:/opt/blueboat/fonts
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论