具体实现方案大概是:
nextjs 和 golang(或者其他语言也行)后端分别是两个 docker ,由 nginx 分发,/api/请求转发到后端上,其它请求转发给 nextjs 。需要做 SSR 的部分,由 nextjs 使用内部通信访问后端。
怎么说呢,就是相当于搞一个高性能后端的同时,还能用到 nextjs 的特性,比如 SSR 等。
(有一种“不如 PHP”的感觉,果然还是 PHP 天下第一吗?)
1
foolishcrab 3 天前 via iPhone ![]() 你是学生吧,
1. 大规模生产应用都这么干的 2. 不要被所谓的全栈框架忽悠了,现实里在 next 写后端业务很少 3. 企业里你的 nginx 分发这一层实际很复杂 |
![]() |
2
bugsnail 3 天前
1 楼正解
|
![]() |
3
YogiLiu 3 天前 via Android
看到标题的第一反应是:难道不应该这么干?
|
![]() |
4
donaldturinglee 3 天前 via Android
nextjs 很少写业务,后端取决于你们的系统架构是什么,Nginx 在云上真的很复杂(一脚踏进一个大坑)
|
![]() |
5
wunonglin 3 天前
next.js 的应用场景多数在官网之类的 ToC 端,大多数需求不会有复杂的后端,所以可以作为全栈使用,可以理解为现代的 laravel
其次在使用 next.js 后,对于后端的话没什么要求,不存在你说的所谓“相当于搞一个高性能后端”的说法。具体看需求而已。 另外你说的“使用内部通信访问后端”,这个描述的是前端胶水层。SSR 正常情况下只会预加载首屏数据,当然也可以充当胶水层,具体看你怎么用,有没有必要用而已。 |
![]() |
6
nomagick 3 天前
真·21 世纪 PHP
|
![]() |
7
learnshare 3 天前
本来前后端分离是这么干的。
Next.js 有写后端逻辑的能力,但都是可选的。 如果有独立的 API ,那 Next.js 的优势就是 SSR 。 |
8
000sitereg 3 天前
SSR 这种就别用了 要是有搞头 PHP JSP 之类的也不会淘汰了。虽然还有地方在用
|
![]() |
9
gneko OP @foolishcrab
@YogiLiu 感谢回复,只是不做这个方向,学 nextjs 业余搞个人项目搞着玩的,不清楚现在业界的通用做法。 当然,个人项目的话没有这么高的性能要求,只是想问一下说如果(自己做什么东西)有了性能要求的,是不是可以这么做。 如果这是常用做法的话,那也算是确认了可行性就放心继续搞了哈哈。 |
10
hwdq0012 3 天前
我以为正常都是 kubernetes 了 ,ingress 没有带 ssr 吗,
|
![]() |
12
fu82581983 3 天前
7 年前在公司搞过,当然不是 nextjs ,也是类似的支持 SSR 的框架,当时对 SEO 还有要求。
现在都拆掉了,爬虫对纯客户端渲染的支持得也不错了。 |
13
dcsuibian 3 天前
我有干过,不过是 Next.js+Spring Boot
https://www.v2ex.com/t/971252 时间有点久了,但总体感觉 Next.js 不太好用。如果我没记错的话它好像会在打包时就访问后端 API |
15
flmn 3 天前
如果你是对外的网站,偏内容,有 seo 需求,用 nextjs 。如果是信息管理类,nextjs 也不需要,直接 spa 静态页面更简单。
|
![]() |
16
jaylee4869 3 天前
@dcsuibian 打包访问服务端是 SSG (静态页面生成)。
|