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

最近想做一个小程序,请教下一些选型参考

  •  
  •   szmx · 189 天前 · 1592 次点击
    这是一个创建于 189 天前的主题,其中的信息可能已经有所发展或是发生改变。
    本人前端菜鸟,苦于对后端生态不太熟悉,所以咨询下 v 友们的建议
    PS:因为是个人项目,所以选型要求经济实惠

    前端:微信原生
    后端:Koa
    Redis:IORedis
    消息队列:RabbitMQ
    数据库:MongoDB
    图片视频存储 CDN:又拍云?

    部署方面纠结了很久,目前有想到两种方式:
    1 、采用云开发,这样 redis 和 消息队列可以直接使用云原生
    2 、自己购买服务器。需要部署后台服务、redis 服务以及消息队列,那么是不是需要购买几台服务器?服务器配置参考怎么选?另外后续流量上来了,有什么监控告警升级之类的?

    路过大佬们麻烦点评一下
    20 条回复    2023-10-24 11:57:12 +08:00
    rimworld
        1
    rimworld  
       189 天前
    用到 redis ,还有 sql 。整个项目是不是重了点,小程序合适吗。
    其实可以看看云开发。如果做出来使用量不高的话,应该还是云开发省一点吧。买服务器一买就是一年。等做大了,再自建服务。
    自建服务器,后端服务域名地址还需要提前准备好 ICP 备案的。
    mclxly
        2
    mclxly  
       189 天前
    尽可能把系统架构搞简单,不然运维够你受的。另外不要一开始就想着流量上来了的情况,新手日活三位数已经很不错了。一台轻量云试水吧。
    musi
        3
    musi  
       189 天前
    “另外后续流量上来了”,论坛里面做小程序的不少,一百个人里面只有一个人需要考虑这个问题
    szmx
        4
    szmx  
    OP
       189 天前
    @rimworld 目前功能涉及点赞收藏关注,榜单、附近查询计算这些,所以我的想法是使用 redis 实现比较好,另外有替代方案吗?备案这个已经考虑了,类目本身就需要 ICP 备案
    szmx
        5
    szmx  
    OP
       189 天前
    @mclxly 感谢,轻量云有推荐的吗
    szmx
        6
    szmx  
    OP
       189 天前
    @musi 确实,可能考虑有点多,现在瞎子过河,多问几句
    musi
        7
    musi  
       189 天前 via iPhone
    @szmx 我的一个 2g 轻量云,部了三个小程序服务,内存占用 60%,同时部署了 redis 和 mysql ,现在一年了还是稳得很,就是日活一百
    szmx
        8
    szmx  
    OP
       189 天前
    @musi 感谢,可以给个直达地址吗
    kakki
        9
    kakki  
       188 天前
    serverless 方案最适合你,unicloud 或者 微信云开发。
    rekulas
        10
    rekulas  
       188 天前
    既然你不熟悉后端,就别去折腾, 我也觉得上楼说的 serverless 适合你
    mybro
        11
    mybro  
       188 天前
    买台服务器以后做什么都方便一些,昨天申请了一台新的 4g 内存的轻量服务器,docker 部署了 mysql 、redis ,内存占用 0.7g 左右。Node 服务本身不会占用大内存,2g 应该足够了。
    我的意见是:服务器可以选轻量服务器,2 核 2g/2 核 4g ,套餐的带宽一般都在 4-6M 。先迈出第一步,后续有流量再加钱升级配置,前期不需要考虑这么多。框架可以考虑下 NestJS
    szmx
        12
    szmx  
    OP
       188 天前
    @kakki 感谢建议
    szmx
        13
    szmx  
    OP
       188 天前
    @rekulas 感谢建议,对比了一下,还是打算折腾下
    szmx
        14
    szmx  
    OP
       188 天前
    @mybro 哇,谢谢这么详细的建议,已经在选择了轻量服务器了。另外图片视频存储这么有什么推荐吗
    mybro
        15
    mybro  
       188 天前
    @szmx 对象存储,按量收费,价格不贵,不过要防止下被刷流量
    szmx
        16
    szmx  
    OP
       187 天前
    @mybro 好的
    zsh2517
        17
    zsh2517  
       187 天前
    关于“另外后续流量上来了”和“经济实惠”

    我自己做过个东西,在一个 1 核 2G 的服务器同时跑 3 个 flask 项目和 1 个 MySQL 8.0 ,高峰时期每秒 10+ 带有数据库 IO 的请求没有遇到啥问题。1 核 2G 是什么概念? vscode remote 一连就死机(虽然我那个项目实际上只有几分钟的 10+ 峰值,平常低于 1 QPS )。而如果稳定 10+ QPS ,如果平均下来的话,只算白天是 50w 请求

    项目起步,有个后端,有个数据库就够了,如果有比较多的静态资源,就加一个 CDN 或者对象存储。其他东西暂时用不到。甚至如果项目足够简单,连数据库都不需要,文件 IO 都能当数据库用

    除非项目后端的运算量非常大,要不流量上来之后,哪怕挂个广告,买服务器也买得起
    riluolvshe
        18
    riluolvshe  
       187 天前
    一开始先简单了做起吧,mvp 跑通了,有需要再优化。会云开发就云开发,不会就买云服务器自己部署。像阿里云新人 1g2 核轻量级的才几十百来块一年。
    硬要说的话,缓存不一定要,也不一定就是 redis ,可以看看本地缓存能不能满足。队列不要。数据库看你框架吧,mysql ,h2 都可以。cdn 不着急,有需要再说。
    jeeyong
        19
    jeeyong  
       187 天前
    先快速完成原型.
    有钱赚就重构, 半死不活就优化, 亏本还想做就维护.
    越简单越好.
    szmx
        20
    szmx  
    OP
       186 天前
    谢谢各位 v 友,已经在买了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2831 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 05:56 · PVG 13:56 · LAX 22:56 · JFK 01:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.