V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dreamramon
V2EX  ›  问与答

关于 serverless 的最佳实践

  •  
  •   dreamramon · 2023-03-16 10:26:06 +08:00 · 1870 次点击
    这是一个创建于 616 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近在升级一个日活 100w 的新项目,想试试 serverless 来玩玩,暂定 aws 的 lambda 。

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

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

    q1: 不知道类似的基于 typescript 和 serverless 的 框架 各位 v 友 有没有推荐的。。。
    q2: aws 的 lambda 我看貌似是上传到他不同区的,不知道这个可以怎样做全球都让用户访问自己最近的 edge ?
    q3: 这个领域不知道有没有一些工程实践 (从实现到部署到运维监控),或者社区可以学习学习的。。。
    8 条回复    2023-03-16 16:51:13 +08:00
    leonhao
        1
    leonhao  
       2023-03-16 10:35:01 +08:00
    静态文件放到 S3 ,用 cloudfront 做加速,后端用 API Gateway+lambda ,类似工程实践非常多,到 AWS 官方 blog 找。
    dreamramon
        2
    dreamramon  
    OP
       2023-03-16 10:48:56 +08:00
    @leonhao #1 这一套的部署,到 api gateway 配置对应的 lambda ,有没有全套自动化的东西?我现在都是手工去网页里面,很麻烦。。。包括 db 那边做 白名单。。。
    leonhao
        3
    leonhao  
       2023-03-16 11:01:36 +08:00
    有 CDK 模板,你找一下,都是很成熟的东西了,只要调整一下就行
    wangmn
        4
    wangmn  
       2023-03-16 11:39:37 +08:00
    laf(.)dev
    Rocketer
        5
    Rocketer  
       2023-03-16 13:21:18 +08:00 via iPhone
    两年前用的框架就叫 serverless ,支持 aws 和腾讯云的函数计算,不知现在流行什么?
    momocraft
        6
    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
        7
    zackkson1991  
       2023-03-16 13:31:54 +08:00
    如一楼大哥说的那样. 关于如何入手, 直接 YouTube, 有很多的教程也有很多这样的方案.
    关于部署, 反正有 aws cli, 没有问题的.
    dreamramon
        8
    dreamramon  
    OP
       2023-03-16 16:51:13 +08:00
    @momocraft #6 主要 node 或者 ts 项目的打包(那一堆 node_modules ),然后上传到 lambda ,静态上传到 s3 ,然后得到新生成的地址,然后更新 api gateway ,挺繁琐的。。。不知道有没有开源的类似的方案,可以参考。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3048 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:36 · PVG 08:36 · LAX 16:36 · JFK 19:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.