关于 serverless 的最佳实践

2023-03-16 10:26:06 +08:00
 dreamramon
最近在升级一个日活 100w 的新项目,想试试 serverless 来玩玩,暂定 aws 的 lambda 。

网上搜了一堆,感觉文章很少,都是 https://www.serverless.com/ 这家公司的广告。

现在的 app 主要是用的 go+redis+rabbitmq+postgres ,然后涉及到定期生成一大堆静态文件用于前端展示。

q1: 不知道类似的基于 typescript 和 serverless 的 框架 各位 v 友 有没有推荐的。。。
q2: aws 的 lambda 我看貌似是上传到他不同区的,不知道这个可以怎样做全球都让用户访问自己最近的 edge ?
q3: 这个领域不知道有没有一些工程实践 (从实现到部署到运维监控),或者社区可以学习学习的。。。
1723 次点击
所在节点    问与答
8 条回复
leonhao
2023-03-16 10:35:01 +08:00
静态文件放到 S3 ,用 cloudfront 做加速,后端用 API Gateway+lambda ,类似工程实践非常多,到 AWS 官方 blog 找。
dreamramon
2023-03-16 10:48:56 +08:00
@leonhao #1 这一套的部署,到 api gateway 配置对应的 lambda ,有没有全套自动化的东西?我现在都是手工去网页里面,很麻烦。。。包括 db 那边做 白名单。。。
leonhao
2023-03-16 11:01:36 +08:00
有 CDK 模板,你找一下,都是很成熟的东西了,只要调整一下就行
wangmn
2023-03-16 11:39:37 +08:00
laf(.)dev
Rocketer
2023-03-16 13:21:18 +08:00
两年前用的框架就叫 serverless ,支持 aws 和腾讯云的函数计算,不知现在流行什么?
momocraft
2023-03-16 13:30:54 +08:00
q1 我觉得启动快就行了.. serverless 也不需要特别的服务器

q2 AWS 的 API Gateway 可能可以

q3 点 UI 可以用写代码代替, 所谓 Infra as Code / Provision as Code
那个 serverless 框架也有这方面功能
但是很多云资源在 AWS 的 CloudFormation 包一层 在 serverless 再包一层 我嫌麻烦
所以需要长期维护的东西一般就 Terraform 管理
zackkson1991
2023-03-16 13:31:54 +08:00
如一楼大哥说的那样. 关于如何入手, 直接 YouTube, 有很多的教程也有很多这样的方案.
关于部署, 反正有 aws cli, 没有问题的.
dreamramon
2023-03-16 16:51:13 +08:00
@momocraft #6 主要 node 或者 ts 项目的打包(那一堆 node_modules ),然后上传到 lambda ,静态上传到 s3 ,然后得到新生成的地址,然后更新 api gateway ,挺繁琐的。。。不知道有没有开源的类似的方案,可以参考。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/924430

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX