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

把服务器放家里的可行性?

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

    弄了一个小的语音识别服务,鉴于目前各大云平台 GPU 服务器的成本(每月最少 1K+)

    如果在家里弄个 Apple M1/NVIDIA 机器放在家里

    FRP 把流量转发到家里,用家里的服务器处理。

    因为是从服务器转发过来,域名已备案,这样应该不存在不合规问题。

    这种可行性有多大,坑多不多,大家谁弄过?

    120 条回复    2024-01-01 15:52:59 +08:00
    1  2  
    LokiSharp
        1
    LokiSharp  
       253 天前
    有前置服务器没什么问题,就是高负载可能比较吵,而且夏天得开空调散热
    littlehans8
        2
    littlehans8  
       253 天前   ❤️ 2
    可行,当用户不足以支持服务器开销的时候用这种方式是个不错的选择,当然会牺牲一定的稳定性。
    要注意几个点:
    1. 家庭带宽一般每隔 24 小时会 48 小时会重新分配 IP ,此时可能出现短暂的网络中断(除非你是固定 IP );
    2. 推荐用二级域名去建站,可以省去很多麻烦。
    haozes
        3
    haozes  
    OP
       253 天前
    @LokiSharp 这个应该存在,有那么高负载,已经有足够收入,不用省这点了,哈哈
    xsourse
        4
    xsourse  
       253 天前
    个人觉得完全没问题,以前我把 R720 都放家里书房过,现在扔机房去了就风扇拉满了
    airqj
        5
    airqj  
       253 天前
    我打算搞个洋垃圾放在老家 😂
    haozes
        6
    haozes  
    OP
       253 天前
    @littlehans8
    网络偶尔中断一下应该问题不大,它会自动重连就行。HTTP 服务本来也不是一直连着。
    嗯,肯定是二级域名。
    haozes
        7
    haozes  
    OP
       253 天前
    @airqj 我打算搞个 MAC MINI 之类应该就行了
    cheneydog
        8
    cheneydog  
       253 天前   ❤️ 2
    我就是塔式服务器放家里,目前没显卡,纯为了统一编程和折腾。
    用 zerotier 连在一起的,自建 moon 中转一下延时可以接受。zerotier 比 frp 方便。
    zhengrt
        9
    zhengrt  
       253 天前
    @haozes 问一下 op ,你的语音识别是用的哪个开源模型的?什么语言,识别精度怎么样
    wxlwsy
        10
    wxlwsy  
       253 天前
    我用 frp 搭建了泰拉瑞亚服务器,永恒之塔服务器. 用的腾讯云(还是本市的机房),家里 64G 内存 allinone. 结果就是感觉 frp 不太稳定,时不时就会掉线.
    mineralsalt
        11
    mineralsalt  
       253 天前
    我就是这么做的, 相对于你的优势是我又动态公网 ip, 可以直接访问, 我的域名也是正常备案的, 二级域名映射到家里, 用了好几年了, 省了非常多的钱
    haozes
        12
    haozes  
    OP
       253 天前
    @zhengrt 我弄的这个场景和需求和普通的转写之类的不太一样。
    推荐你用开源的 whisper ,这个我觉得已经超过国内那些付费的。
    假如有中文语料再训一下就更理想。
    ooxxcc
        13
    ooxxcc  
       253 天前   ❤️ 2
    可以看一下 reddit 的 r/homelab 板块
    lerry
        14
    lerry  
       253 天前   ❤️ 1
    主要就是看家里的网和电稳不稳了,考虑到停电断网之类的。
    可以再另外一个地方再部署一套,或者如果有需要能马上部署出来也行。
    haozes
        15
    haozes  
    OP
       253 天前
    @cheneydog zerotier 不知道稳定性怎么样。
    @mineralsalt 动态公网 IP ,用什么转过来的呢?
    picone
        16
    picone  
       253 天前
    FRP 延时会大点?有公网最好公网?
    我搞了个洋垃圾做游戏代挂机服务,对内多进程跑脚本,对外公网提供 API 接口,走 vercel 包一层网关隐藏真实 IP 。并且做 Grafana Cloud 搞了一套监控和告警。
    优点是:真的便宜,网费忽略,电费很低。
    缺点:
    - 不能重启很蛋疼,维护不了。
    - 数据有点怕,目前情况是代码当然有备份,但是运行数据得定时同步,正在搞
    onetown
        17
    onetown  
       253 天前   ❤️ 1
    如果只是 http ,websocket 之类的, 可以试试 cloudflare 的 tunnel 试试
    thinkm
        18
    thinkm  
       253 天前
    @picone 这样用户实际访问的是 vercel 吗,这样会不会很慢
    acbot
        19
    acbot  
       253 天前
    如果是做测试或免费类型的应用,问题不大;如果要做商业性应用很明显问题还是有的!另外,“合规” 我的理解和你不一样,你的域名只是在服务器哪里备案了,仅仅是你可以在该运营商或者是 IP 上合规使用,并不代表你可以在其他家使用这个域名,更不要说在家宽上可以走监管流量和协议(比如:HTTP 等),只要你被运营商防火墙抓到了相关协议,同样完蛋,所以你两端至少还得配置加密!
    JamesR
        20
    JamesR  
       253 天前
    我放家里几年了:
    1.mini 机,SSD ,低功耗省电。
    2.中继用的是 Frp ,做成了 Windows 服务,并在 Windows 服务属性-恢复里设置了自动重启。
    3.有公网 IP ,每 36 小时会变 IP ,frp 检测到中断 30 秒会重连。

    长期用下来,一直无问题,适合无严格在线要求,访问量不大的服务。
    worldqiuzhi
        21
    worldqiuzhi  
       253 天前
    公司的服务器像飞机起飞
    mineralsalt
        22
    mineralsalt  
       253 天前
    @haozes #15 所有的内网穿透稳定性都不行, 有公网 ip 就简单了, DDNS 映射呗, 你可以找运营商申请看看, 不过现在挺难的, 几年前非常容易
    lifeorwar
        23
    lifeorwar  
       253 天前
    可行,我就是这么干的,部署了十几个服务,一部分通过 frp 对公网访问。cpu 是 amd 5800u ,内存 64G ,硬盘 2TB ,nas 30TB ,配合上 ups 一般断电都没事,主要怕断网。
    haozes
        24
    haozes  
    OP
       253 天前
    @acbot 对,我担心就是,有没有这类风险。
    不知道使用 FRP 时,用 HTTPS 是否足够
    cloverzrg2
        25
    cloverzrg2  
       253 天前   ❤️ 1
    放了 4 年了
    touchmii
        26
    touchmii  
       253 天前
    噪音太大, 太费电, 不可行, 搞个塔式工作站好点.
    dayuzhu
        27
    dayuzhu  
       253 天前
    我前几天用的自己 8 代 i7 笔记本当服务器,申请的公网 ip ,使用 ddnsgo 绑定域名,这样动态 ip 一直能绑定域名了,目前来看还算稳定
    acbot
        28
    acbot  
       253 天前   ❤️ 1
    @haozes 我指的是 frp 客户端和服务端的数据通道要配置加密(仅两端可以解密)!再在这个加密的通道上做 TCP HTTP 等业务
    ButcherHu
        29
    ButcherHu  
       253 天前
    也许可以找个服务器托管?
    sdwgyzyxy
        30
    sdwgyzyxy  
       253 天前
    nuc8i5beh ,32G 内存,目前家里已经开机三年没关机过,没啥问题。
    Bazingal
        31
    Bazingal  
       253 天前
    量少省不了多少钱,量多为什么不直接装台服务器托管到机房
    j717273419
        32
    j717273419  
       253 天前
    广坤呐,你就不怕刘能给你偷走?
    ltyj2003
        33
    ltyj2003  
       253 天前 via Android
    建议选塔式服务器,空间大,风冷转速低,噪音小。另一方面,配件与 PC 通用,来源和成本可控。
    不建议选刀片式加机架,刀片服务器空间有限,全靠小直径暴力扇风冷,噪音要上天,配件也是服务器专用规格。
    服务器位置可以放在没人的通风良好的房间,不开空调问题也不大。
    yinmin
        34
    yinmin  
       253 天前 via iPhone   ❤️ 1
    “用 FRP 把流量转发到家里,用家里的服务器处理”: 方案可行

    “因为是从服务器转发过来,域名已备案,这样应该不存在不合规问题”: 合规

    坑:FRP 不能高并发,如果并发大于 500 ,可能会出错。
    totoro625
        35
    totoro625  
       253 天前
    那么多人的 NAS 都是这样玩的
    甚至是 frp 到海外的机器上串流 emby

    我比较喜欢 Tailscale ,一端有公网 ip 就可以直连,比较稳定
    自家是套的腾讯云 CDN ,走公网 ipv6 回源,省去买服务器的钱了
    libook
        36
    libook  
       253 天前
    互联网经营性业务的话,还会有其他一系列合规要求,家庭部署这块单网安方面都满足不了,比如灾备、机房管理、消防等,当然网安真要做到及格线的话八成成本就已经高于云平台了,而且你业务量小的话监管也不会注意到你,大概率也没人要求你做等保。

    其他的就是看宽带协议里是不是有不允许商用的条款,不过只要不是流量特征有异常,运营商应该也觉察不到。

    综合看来貌似可以开干试试。
    18500592934
        37
    18500592934  
       253 天前
    @picone 重启干啥?还是指来电唤醒?
    xgfan
        38
    xgfan  
       253 天前   ❤️ 6
    op 描述的场景应该对实时性要求不高,甚至可以说没有实时性要求。
    估计连 frp 都不需要。
    把需要识别的文件放对象存储/服务器。然后把 url/file key 放队列。
    家里机器读取队列,下载文件做识别,把结果上传到服务器。

    完全可行。
    aapeli
        39
    aapeli  
       253 天前
    会停电.... 我就是这样做的
    BG7ZAG
        40
    BG7ZAG  
       253 天前
    自己开发测试没问题,商用必须合规
    jmss
        41
    jmss  
       253 天前
    建议放地下室,加除湿器,北方比较号吧,感觉南方不台行。
    yinmin
        42
    yinmin  
       253 天前 via iPhone
    如果你是做手机 app ,家宽有公网动态 ip ,可以写一个心跳程序每 30 秒把自己的家宽 ip 传给云服务器。手机 app 先从云服务器抓 ip ,然后直连家宽服务器。这样可以把云服务器的流量费也省了。
    JensenQian
        43
    JensenQian  
       253 天前
    @haozes #15
    ddns 啊,公网 ip 的话 v4 移动基本上不行,电信联通的话看地方,但是很多地方已经不给了
    当然加钱的话还是可以的,打个电话问问就知道了

    可以玩 ipv6 ,不过前提你也得有 v6 才能访问
    内网穿透的话自己搞个 nat 鸡
    waltcow
        44
    waltcow  
       253 天前
    我现在用的是 cloudflare tunnel
    yufeng0681
        45
    yufeng0681  
       253 天前
    @xgfan 家里服务器和公有云可以保持长连接,读取队列消息能实时。 还能顺便实现集群处理队列消息。只要找个新机器启动服务,就能领取识别任务,并完成。
    那就可以到处找肉机,比如单位的闲置服务器,同事朋友的办公机, 闲置的手机。
    VYSE
        46
    VYSE  
       253 天前
    有公网 IP, V2RAY 都可以打隧道, 不过我用的 node 的简易隧道, 维护一个保活连接池, 比 rust 市面上的隧道快
    arrando
        47
    arrando  
       253 天前
    其实就担心人不在家的时候有火灾的风险,尤其夏天
    byte10
        48
    byte10  
       253 天前
    没啥大问题,如果你有公司上班的话,我推荐你的放小主机在公司里会更好😂。因为一般在公司断电断网的概率小,而且断电都会提前公告通知。家里再放一个便宜的小主机,这样你就可以随时切换 家里备用的机器。

    另外数据量不大的话,可以把数据可以放云端,这样安全一些,也方便容灾切换。
    SenLief
        49
    SenLief  
       253 天前
    放家里很正常吧,用 frp 做什么,自己用的话直接 ipv6 就好了。不对外提供服务,Ipv6 够用的。
    zyq2280539
        50
    zyq2280539  
       253 天前
    我的树莓派就是放家里,正常啊,tailscale 打洞配合腾讯云做中转
    wodema
        51
    wodema  
       253 天前
    可行
    MYlyc
        52
    MYlyc  
       253 天前
    cloudflare tunnel
    misty8873
        53
    misty8873  
       253 天前
    我感觉放 IDC 也还行。看你在哪个城市。家里如果吵可以接受,就没啥问天
    nothingistrue
        54
    nothingistrue  
       253 天前   ❤️ 2
    FRP 也是不让的,你要是没加密的 FRP ,用不了几天运营商就该让你签保证书了。加密之后,就跟 VPN 一样了,小的不查,大得照样查出来。
    maxxfire
        55
    maxxfire  
       253 天前
    这么多人这样搞,合法吗,电信不会查?
    maxxfire
        56
    maxxfire  
       253 天前
    @byte10 #48 还在公司搭服务器,不怕公司告?
    mikaelson
        57
    mikaelson  
       253 天前
    刚买了个明矾的 um580d 也准备在家里搞点服务和测试
    kid1412621
        58
    kid1412621  
       253 天前
    @sdwgyzyxy #30 和我一样,想问下你用啥做转发
    jack778
        59
    jack778  
       253 天前
    @JamesR 既然都有了公网 ip, 为什么还要 frp, 直接端口转发不是更好吗?
    xdzhang
        60
    xdzhang  
       253 天前
    我最近家里的网络刚开通了 80 和 443
    Cola98
        61
    Cola98  
       253 天前
    frp 有时候会出现问题,突然断开
    qq1064392665
        62
    qq1064392665  
       253 天前
    建议买个别墅当数据中心
    picone
        63
    picone  
       253 天前   ❤️ 1
    @thinkm 是的,会美国走一圈。但是相当于免费的 Gateway 啊,国内的都得备案
    picone
        64
    picone  
       253 天前
    @18500592934 清灰插拔个硬盘啥的不可能了,因为长期给别人挂着脚本,停的话会有点影响。其实有点刀尖舔血了,相当于保证了 SLA 但是却没有具体措施
    JamesR
        65
    JamesR  
       253 天前
    @jack778 #59 因为家宽公网 IP 老变,给客户是用域名访问的,域名指向中转机。除了远程桌面用 IP 直连,其他大部分服务都是用域名。
    h2ero
        66
    h2ero  
       253 天前
    用超微组了个,扩展性好,还可以
    thinkershare
        67
    thinkershare  
       253 天前   ❤️ 2
    @haozes 我一起这么搞过,后来被电信打电话过来询问了一堆,我一直占用慢上下宽度,我用的端口转发,IP 变换后,解析也变化,但是后来电信竟然用很高的频率更换我的 IP ,我就无语了,后来还是放弃了。
    azarasi
        68
    azarasi  
       253 天前   ❤️ 1
    噪音太大了
    rockxsj
        69
    rockxsj  
       253 天前
    https://dubi.tk/ 用的 cloudflare tunnel ,现在不维护了,之前高的时候一天几万个人访问还是挺稳定的
    haozes
        70
    haozes  
    OP
       253 天前
    @rockxsj 你这是放在家里?太吊了
    zhangbaoliang
        71
    zhangbaoliang  
       253 天前
    @xgfan 是的。其实就是线下任务。跑完了。把结果上传一份就行
    150530
        72
    150530  
       253 天前
    @totoro625 我家里也是公网 ipv6 ,套腾讯云 cdn 回源收费是多少啊,需不需要备案
    flyqie
        73
    flyqie  
       253 天前 via Android
    @picone #16

    pikvm 和类似产品了解一下?

    最低价格 300 人民币就能搞一套。。
    chenjunqiang
        74
    chenjunqiang  
       253 天前
    电费也要小 1000 吧?
    sdwgyzyxy
        75
    sdwgyzyxy  
       253 天前
    @kid1412621 我自己用,frp 足够我用了,如果实在是请求量高,感觉用 kong+zerotier 来搞会好一些。
    kwanzaa
        76
    kwanzaa  
       253 天前
    这类需求几百块的 x86 二手主机就行了,少花钱少折腾。
    RobinHu
        77
    RobinHu  
       253 天前
    @rockxsj #69
    老铁 好像不能挂载,还是我设置错了
    Failed init storage: request failed, status: 406 Not Acceptable
    cheng6563
        78
    cheng6563  
       253 天前
    无状态服务还行,但别往家用 PC 上放数据库。
    没 ECC 内存没 RAID ,用久了必炸。
    totoro625
        79
    totoro625  
       253 天前
    @150530 #72 使用国内 CDN 都是需要备案的
    我购买的流量包,目前老用户每月能领取 10G 流量包,不买流量包 0.21 元/GB
    https 请求前 300 万次免费,0.05 元/万次; QUIC 0.05 元/万次
    我月均 15G 流量,150 万次 https 请求

    主要是提供给不能使用 ipv6 情况下的备选方案,系统默认都是 ipv6 优先的,ddns 动态更新 ipv6 ,优先直连回家

    检查 ipv6 优先级: https://ipw.cn/
    rockxsj
        80
    rockxsj  
       253 天前
    @RobinHu 你没设置错,是我做了限制,禁止挂载了。。
    rockxsj
        81
    rockxsj  
       253 天前   ❤️ 1
    @haozes #70 是的,放在家里的,只是一个 50 块的移动魔百和刷了 armbian
    yanzhiling2001
        82
    yanzhiling2001  
       253 天前
    可行,这事属于小马过河
    cat9life
        83
    cat9life  
       253 天前
    frp 属于“玩具”级别的吧。但是我也没想到其他的穿透方案
    xlh001
        84
    xlh001  
       253 天前
    cloudflare tunnel 或者 Tailscale 就好了
    yinmin
        85
    yinmin  
       253 天前
    高并发场景,建议方案是:云服务器用 nginx 做反代,通过 Tailscale 连接家里的服务器
    GeekGao
        86
    GeekGao  
       253 天前
    我试过,是可以,但是需要注意制冷、电源问题。
    最大的坑就是稳定性:断电、断网
    DigitalG
        87
    DigitalG  
       253 天前
    @yufeng0681 #45 请问这种机制有现成的 框架/代码 可以直接使用或者参考吗?(就是指局域网服务器和公有云保持长链接,实时处理消息队列的机制)
    uncat
        88
    uncat  
       253 天前
    已经这样做 2 年了。
    用的是普通的 PC 主机,7 * 24 小时不关机,系统用的是 Arch Linux 作为底层虚拟化环境。
    稳定性其实还好,市电的稳定性比我想象中的高很多(坐标:广州)。并不会带来困扰。
    网络的解决方案是 FRP + WireGuard ,入口是腾讯云轻量服务器(广州:6Mbits )体验也不错。

    可能会有的坑:

    长时间运行会比较热,噪音也比较大,机子所在的房间会闷热不适合人待,需要有个单独的房间
    如果是租房,搬家时比较麻烦(机子笨重)
    PandaChan
        89
    PandaChan  
       253 天前
    可行,T7920 工作站当家庭服务器用了一年多了,IP 变更问题这边是爱快设置每两天的凌晨五点自动重新拨号,域名 TTL 十分钟,等于说五点到五点十分,服务处于不可用状态。
    uncat
        90
    uncat  
       253 天前
    哦,对了,移动的宽带有时候会断网,这个也是需要考虑的。

    我其实做了你想做的,就是将服务部署在家,然后通过 FRP 暴露服务到公网,比如我的博客。

    另外,请务必意识:

    服务是跑在家庭内网的,暴露 App 会带来家庭内网的安全风险。比如我的内网会有 vaultwarden 这类敏感服务,所以我也只敢暴露一个简单的 hugo 静态资源站点。

    像 gitlab 这类服务,建议还是放到 WireGuard 后面(经过 WireGuard 认证后才能访问而不是直接公网暴露),一方面,避免数据明文传输。另一方面,避免今后服务因缺少维护而导致的未知安全风险。
    asmoker
        91
    asmoker  
       253 天前
    @haozes zt 稳定性不错的,推荐这个项目: https://github.com/key-networks/ztncui
    一键启动,一步到位
    tkhmy
        92
    tkhmy  
       253 天前
    @rockxsj 你这 cdn 的成本不低呀
    Metre
        93
    Metre  
       253 天前
    家里人不用网了嘛... 理论是可行的
    上行就那么点 上行被占用后,微信视频之类会卡 我就被我老婆吐槽过
    kid1412621
        94
    kid1412621  
       253 天前
    @sdwgyzyxy #75 zeroTier 是不是也自建了 moon
    rockxsj
        95
    rockxsj  
       253 天前
    @tkhmy cloudflare 免费的啊
    NikoXu
        96
    NikoXu  
       253 天前
    戴尔 T630 , 我现在就在用 , 噪音很小
    colder2199
        97
    colder2199  
       253 天前
    我就是这么搞的 戴尔的 3710 小主机,12400 的 cpu 一块固态 一块机械,32G 内存,跑了一堆虚拟机,平时功耗 25w 左右,三伏天也没啥散热压力
    cgb1021
        98
    cgb1021  
       253 天前
    能过备案这一关吗?服务器换地址应该要重现备一次
    buruoyanyang
        99
    buruoyanyang  
       253 天前
    坐标杭州电信,路由器改桥接,在阿里云买的域名,DDNS ,甚至可以在公网看 emby 上的电影。
    opengps
        100
    opengps  
       253 天前 via Android
    我已经这么用了,公网只是需要一个入口
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   930 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 22:44 · PVG 06:44 · LAX 15:44 · JFK 18:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.