个人项目后端技术选型求取经,语言&框架&云 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
AndyZhuAZ
V2EX    程序员

个人项目后端技术选型求取经,语言&框架&云

  •  
  •   AndyZhuAZ 2024-09-09 22:42:22 +08:00 2643 次点击
    这是一个创建于 449 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在给自己的 app 准备后端,主要需求有:

    1. Auth ,需要 Apple 、Google 这样海外常见的第三方登录,需要内购验证 API (目前只有做 AppStore 订阅的打算)
    2. 用户的数据同步,都是文本内容,本地数据库用的是 objectbox (不知道用官方的同步服务会不会有未来迁移困难的问题)
    3. web ,网页端用户管理自己的数据,一些简单的导入导出。给 app 用的 API 。

    用户量可能一两年不会超过 4 位数,用户基本海外。

    语言上有点想试试 go 的想法,但是我对 Python 比较熟,然后看 Apple 给的 app-store-server-library 也只有 TS 、Python 、Java 、Swift 四种,那是不是只能 Python 了?

    Python 的框架在纠结是不是要用 fastapi(对这个库处理 issue 和 pr 的状态有点担忧),想问一下生产使用的体验如何?

    云方面,因为我比较担心自己管理数据库和服务器会有安全问题,现在我想用 AWS Lambda + API Gateway + DynamoDB 实现上面全部需求,不知道可行性如何?有没有用这样的组合做重活的例子可以参考?

    11 条回复    2024-09-10 19:17:16 +08:00
    zeusho871
        1
    zeusho871  
       2024-09-09 22:43:39 +08:00   1
    django ninja
    Mithril
        2
    Mithril  
       2024-09-09 22:56:12 +08:00   1
    你用啥语言习惯就继续用它。没啥特别需求,或者什么都不会的建议 Java ,突出一个用的人多。集成这些乱七八糟的东西你总能找到对应的库来做。

    AWS 方面没啥问题,但你这些东西配置不好的话安全性也一样没法保证,而且也不便宜。DynamoDB 和你自己开 EC2 装数据库的区别就是能省一些运维的工作,但该做的配置,该怎么提升安全性也一样得你自己考虑。不是说你开了服务就可以什么都不管的。
    yangg
        3
    yangg  
       2024-09-09 23:07:56 +08:00   1
    supabase 不花钱都有了
    AndyZhuAZ
        4
    AndyZhuAZ  
    OP
       2024-09-09 23:15:37 +08:00
    @yangg 这个会比直接用 firebase 更有优势吗?
    yangg
        5
    yangg  
       2024-09-10 08:59:49 +08:00
    @AndyZhuAZ firebase 没用过,突出一个前期不花钱,开发 app 比较方便,api 可以部署到 vercel 或者其它 serverless 平台上,
    用户相关直接 row level secruity 应该都不需要 api ,你要自己看看功能介绍,反正他们家很活跃,搞出不少好用的东西。
    abersheeran
        6/div>
    abersheeran  
       2024-09-10 09:37:24 +08:00   1
    对什么框架熟悉就用什么。

    我一个月两万以上用户的服务,用的 https://kui.aber.sh/wsgi/ + https://github.com/abersheeran/typedmongo 跑在一个 1C1G 服务器上,完全没问题。
    ByteCat
        7
    ByteCat  
       2024-09-10 09:53:23 +08:00
    你这个简单需求用 serverless 倒是也行,那就用 JS/TS 写呗,后面如果要迁移成正经项目也可以,生态也不错,包多,go 你很多要手搓的
    ByteCat
        8
    ByteCat  
       2024-09-10 09:54:50 +08:00   1
    我自己部署了一些小工具在 Cloudflare Workers + Pages 上面,也不错,我用 Hono 写的。
    你说的社交账号登录,npm 有很多现成的包,比如 Auth.js 。
    qloog
        9
    qloog  
       2024-09-10 10:22:04 +08:00   1
    用自己熟悉的,Python 的话 Django 、Flask 还不错,fastapi 应该也还可以,看用的人也挺多
    用 Go 也还好,相对也好上手,看自己的时间和项目的紧急程度了
    xltzx
        10
    xltzx  
       2024-09-10 16:52:14 +08:00   1
    nodejs:express + priams + graphql 写 curd 超快
    009694
        11
    009694  
       2024-09-10 19:17:16 +08:00 via iPhone   1
    用你最熟悉的语言不会错的。。 千万别看外面怎样吹 xx 语言多厉害多牛 x 。 你是在做个人项目,目标是盈利,也不会有高并发,所以选你熟悉的语言做可以最快最稳定上线。
    关于     帮助文档   自助推广系统     博客     API     FAQ     Solana     5155 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 07:33 PVG 15:33 LAX 23:33 JFK 02:33
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86