一个奇怪的想法: nextjs 做前端+ssr, golang 作为后端,有没有搞头 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gneko
V2EX    Next.js

一个奇怪的想法: nextjs 做前端+ssr, golang 作为后端,有没有搞头

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

    具体实现方案大概是:

    nextjs 和 golang(或者其他语言也行)后端分别是两个 docker ,由 nginx 分发,/api/请求转发到后端上,其它请求转发给 nextjs 。需要做 SSR 的部分,由 nextjs 使用内部通信访问端。

    怎么说呢,就是相当于搞一个高性能后端的同时,还能用到 nextjs 的特性,比如 SSR 等。


    (有一种“不如 PHP”的感觉,果然还是 PHP 天下第一吗?)

    第 1 条附言    197 天前
    APPEND 一下楼里的回复作为补充吧:

    我不是互联网后端,学 nextjs 业余搞个人项目搞着玩的,不清楚现在业界的通用做法。

    当然,个人项目的话没有这么高的性能要求,只是想问一下说如果(自己做什么东西)有了性能要求的,是不是可以这么做。

    如果这是常用做法的话,那也算是确认了可行性就放心继续搞了哈哈。
    19 条回复    2025-10-09 17:37:25 +08:00
    foolishcrab
        1
    foolishcrab  
       197 天前 via iPhone   2
    你是学生吧,
    1. 大规模生产应用都这么干的
    2. 不要被所谓的全栈框架忽悠了,现实里在 next 写后端业务很少
    3. 企业里你的 nginx 分发这一层实际很复杂
    bugsnail
        2
    bugsnail  
       197 天前
    1 楼正解
    YogiLiu
        3
    YogiLiu  
       197 天前 via Android
    看到标题的第一反应是:难道不应该这么干?
    donaldturinglee
        4
    donaldturinglee  
       197 天前 via Android
    nextjs 很少写业务,后端取决于你们的系统架构是什么,Nginx 在云上真的很复杂(一脚踏进一个大坑)
    shakaraka
        5
    shakaraka  
    PRO
       197 天前
    next.js 的应用场景多数在官网之类的 ToC 端,大多数需求不会有复杂的后端,所以可以作为全栈使用,可以理解为现代的 laravel

    其次在使用 next.js 后,对于后端的话没什么要求,不存在你说的所谓“相当于搞一个高性能后端”的说法。具体看需求而已。

    另外你说的“使用内部通信访问后端”,这个描述的是前端胶水层。SSR 正常情况下只会预加载首屏数据,当然也可以充当胶水层,具体看你怎么用,有没有必要用而已。
    nomagick
        6
    nomagick  
       197 天前
    真21 世纪 PHP
    learnshare
        7
    learnshare  
       197 天前
    本来前后端分离是这么干的。

    Next.js 有写后端逻辑的能力,但都是可选的。
    如果有独立的 API ,那 Next.js 的优势就是 SSR 。
    000sitereg
        8
    000sitereg  
       197 天前
    SSR 这种就别用了 要是有搞头 PHP JSP 之类的也不会淘汰了。虽然还有地方在用
    gneko
        9
    gneko  
    OP
       197 天前
    @foolishcrab
    @YogiLiu

    感谢回复,只是不做这个方向,学 nextjs 业余搞个人项目搞着玩的,不清楚现在业界的通用做法。

    当然,个人项目的话没有这么高的性能要求,只是想问一下说如果(自己做什么东西)有了性能要求的,是不是可以这么做。

    如果这是常用做法的话,那也算是确认了可行性就放心继续搞了哈哈。
    hwdq0012
        10
    hwdq0012  
       197 天前
    我以为正常都是 kubernetes 了 ,ingress 没有带 ssr 吗,
    shakaraka
        11
    shakaraka  
    PRO
       197 天前
    @hwdq0012 #10 ingress 和 ssr 不是一个东西
    fuhanfeng
        12
    fuhanfeng  
       197 天前
    7 年前在公司搞过,当然不是 nextjs ,也是类似的支持 SSR 的框架,当时对 SEO 还有要求。

    现在都拆掉了,爬虫对纯客户端渲染的支持得也不错了。
    dcsuibian
        13
    dcsuibian  
       197 天前
    我有干过,不过是 Next.js+Spring Boot
    t/971252
    时间有点久了,但总体感觉 Next.js 不太好用。如果我没记错的话它好像会在打包时就访问后端 API
    gneko
        14
    gneko  
    OP
       197 天前
    @dcsuibian 是的,这个是我刚接触 nextjs 时经常遇到的奇怪问题,需要各种各样诡异的 workaround 来绕开。
    flmn
        15
    flmn  
       197 天前
    如果你是对外的网站,偏内容,有 seo 需求,用 nextjs 。如果是信息管理类,nextjs 也不需要,直接 spa 静态页面更简单。
    lavvrence
        16
    lavvrence  
       197 天前
    @dcsuibian 打包访问服务端是 SSG (静态页面生成)。
    hwdq0012
        17
    hwdq0012  
       197 天前
    @wunonglin 好想也要配置 x509 证书,这个不算加密吗,https 这种和 ssr 不一样吗,我没做过后端,但感觉都是加密
    shakaraka
        18
    shakaraka  
    PRO
       197 天前
    @hwdq0012 #17 不是一个东西的。
    tequ1lAneio
        19
    tequ1lAneio  
       3 小时 56 分钟前
    java/go/py 都可以,尤其是这个 ai 时代,py 后端应用越来越多
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2830 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 13:33 PVG 21:33 LAX 06:33 JFK 09:33
    Do have faith in what you're doing.
    ubao 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