无对比无伤害,容器下测试 wp 和 next.js

2023-09-16 18:45:13 +08:00
 jlak
一直很在意这两者之间的性能差异
今天粗略测试了下他们之间的差距
非专业测试有可能会因其他因素影响

服务器是局域网内的 n100@16G
wp 是官方镜像+官方 mysql 镜像
安装完直接用默认主题
初始内存占用 192M

next.js 这边是 op 自己网站用官方 Dockerfile 构建
初始内存占用 79M

用 locust 局域网测压首页 在 300 在线压力下
wp 内存 600M CPU 占用 100% rps 66 响应时间已经爆炸
next.js 内存 200M CPU 占用 60%+ rps900+ 响应时间 300ms+

在 30 在线压力下
wp 内存 409M CPU 占用 100% rps68 响应时间 450ms
next.js 内存 182 CPU 占用 50%~ 60% rps 581 响应时间 51ms
1388 次点击
所在节点    分享发现
8 条回复
Leviathann
2023-09-16 19:00:01 +08:00
wp 是什么
jlak
2023-09-16 19:11:02 +08:00
@Leviathann Wordpress
ragnaroks
2023-09-18 11:51:06 +08:00
nextjs 容器( pod ?)内包含 mysqld 吗?一般来说 nextjs SSR 单个实例不会超过 40M 。
jlak
2023-09-18 13:44:21 +08:00
@ragnaroks 不是 k8s 也不包含 mysqld ,用的这个 Dockerfile https://github.com/vercel/next.js/blob/canary/examples/with-docker/Dockerfile
请问下 40MB 是怎么弄的?
ragnaroks
2023-09-18 21:13:54 +08:00
@jlak 就是普通的 npm run build && npm run start ,点我头像进我网站可测速,我的容器甚至只给了 64M hard limit
ragnaroks
2023-09-18 21:15:09 +08:00
@jlak 唯一有点不同的就是我是 ISG 增量生成,但理论上和 SSR 在峰值资源占用上没有差别
jlak
2023-09-18 23:50:09 +08:00
@ragnaroks pod 不需要 Dockerfile 吗?还是说直接运行实例?
才发现还有 ISR 这个好东西,不过 App router 里好像是混合在 ssr 里
jlak
2023-09-18 23:58:38 +08:00
刚用 create-next-app 开了个新项目直接打包,容器占 71MB 内存

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/974427

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX