V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
witcat
V2EX  ›  分享发现

探索如何低成本部署一个应用的一些唠叨和成果

  •  1
     
  •   witcat · 283 天前 · 1323 次点击
    这是一个创建于 283 天前的主题,其中的信息可能已经有所发展或是发生改变。

    平时喜欢开发一点小软件什么的,但是每次过完瘾就喜欢断舍离,到不了一年就停服了。
    主要驱动断舍离的点主要是服务器要花钱,如果故障了维护服务器真的很麻烦。

    想了很多,我觉得对于自娱自乐的应用,最终目标就是低价,免部署维护。
    但是国内好像就没有什么低价的东西。

    首先就是服务器,虽然我看过有的人在活动时抢阿里云的机器,买的时间长价格就很低。
    甚至公司里有一个人专门负责抢机器。
    但是感觉根本不是一两下就能学会,也有很多窍门,需要长时间采购才知道怎么买。
    总之最后只能买轻量云这种,一个月 60 块还是多少,忘了。
    但是 60 还是觉得贵,但是 60 买一个 vpn 就觉得合理,买苹果开发者账号一年 800 多也不觉得贵。
    就是觉得 60 还是不便宜,一是因为主要也是做来玩玩,做好了就扔在那了,不是天天用。二是国外好多都是免费的配额比这个高太多。
    寻找了一圈,其实最先进的就是 https://render.com/,有免费配额,直接 ci 部署后端代码,唯一的问题就是在国内不能用。
    之后从 serverless 的方向探索,最后选择使用 aws 中国区的 lambda 部署后端。
    坑也是比较多的,aws 的服务有很多都和中国区不同步,而且控制台有时候和服务不兼容。
    aws-cdk 在中国区跑不起来,不知道是不是我的问题,目前还是用不上。
    最后通过 serverless framework 部署到中国区了,一个问题是一段时间后再访问有冷启动时间。
    原本工程里也有些东西和 lambda 不兼容,比如 prisma 就无法通过 rds proxy 复用数据库连接,目前的解决方式也不太好,但还没有出现瓶颈。
    但总之最后,真的很便宜,甚至不需要 60 元,永久免费的每月 100 万请求数。

    其二就是我喜欢做一些零碎的页面,webview 嵌入到应用和小程序里,这样文字可能有修改的地方就不需要更新了,其实就是托管一个 react 项目,有的页面也有些数据交换。
    以前的话,就是 ssh 上传到服务器上,nginx 托管。如果出问题传不上去,一时也不知道怎么解决。
    更高科技的,docker 化之类的,我也不明白,也觉得浪费时间。
    所以还是托管,用了 laf.run ,设计和使用都极其简单,其实已经能满足需求了。开始看了一下,知道是收费的,好像也不多。上线以后仔细算了下,竟然每月保底 10 块?这还得了。
    于是换到 vercel 了,用他的 kv 和 function 做后端,都是有免费方案的。虽然是国外的,但是还没有被封,最重要的是省钱,所以我选择 vercel 。

    第三就是客户端/前端一类的了,上架 appstore 这个每年 800 多是逃不开了,但是微信小程序这种能不花钱就不花钱,收费服务能自建绝对不买。web 页面也全都 vercel 托管。

    最终,可以把阿里云的机器停了,目前就是 aws lambda + rds + vercel
    希望如果我哪天忘了自己还做过这么一个东西,它也能继续自己运行三年。

    另外,关于前端的控制台。本人是前端,还做过几年 UI 。有时候手痒就非得设计一个数据控制台,而且要好看,于是浪费很多时间在开发控制台上面。为了极简低价免维护,我试用了众多的国内外 nocode/low code 平台,大多都有免费方案,但都不是彻底的免费方案。为了解除这种绑定,也不单独开发 UI 控制台,我把大多数的删除/添加数据的前后逻辑都移到了 postgres 函数上,相当于直接编辑数据表即可。prisma data browser 可以做到在浏览器里编辑数据的功能。所以我暂时也不需要控制台了。

    8 条回复    2023-08-08 15:51:15 +08:00
    mineralsalt
        1
    mineralsalt  
       283 天前
    自己在家里搞个台式机不就行了, 我的 HomeServer 运行了几十个各种私有化服务, 非常方便省钱
    chenjia404
        2
    chenjia404  
       283 天前
    如果用户在海外,可以白嫖一些 ipfs 的流量,还有可以使用 cloudflare 的 cdn ,如果配合 cloudflare tunnel 使用,使用本机做服务器。
    witcat
        3
    witcat  
    OP
       283 天前 via iPhone
    @chenjia404 cloudflare 确实省钱又强大,只是在国内被封了
    yimity
        4
    yimity  
       283 天前
    https://zeabur.com/zh-CN 最近新上的服务,免费额度还不错,就是国内速度稍微有些慢,bug 有点多。不过看起来还不错。
    xz410236056
        5
    xz410236056  
       283 天前
    @mineralsalt #1 台式机电费太贵了,小服务我都搞个安卓手机
    2012234
        6
    2012234  
       283 天前
    @xz410236056 请教下安卓手机怎么部署服务的呢
    xz410236056
        7
    xz410236056  
       283 天前
    @2012234 #6 Ubuntu Touch
    yagamil
        8
    yagamil  
       270 天前
    @xz410236056 走内网穿透吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2391 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 11:15 · PVG 19:15 · LAX 04:15 · JFK 07:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.