-
Notifications
You must be signed in to change notification settings - Fork 27.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Externalize next-server
from Server Builds
#11819
Externalize next-server
from Server Builds
#11819
Conversation
next-server
from Buildsnext-server
from Server Builds
ca2cf41
to
45c60c0
Compare
Stats from current PRDefault Server ModeGeneral Overall increase
|
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
buildDuration | 10.3s | 10.1s | -199ms |
nodeModulesSize | 61 MB | 61 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.js gzip | 6.25 kB | 6.25 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..e3d8.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 56.3 kB | 56.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.78 kB | 6.78 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.5 kB | 51.5 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.js gzip | 1.24 kB | 1.24 kB | ✓ |
_error.js gzip | 3.15 kB | 3.15 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.03 kB | 2.03 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.86 kB | 7.86 kB | ✓ |
Client Pages Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Rendered Page Sizes
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
index.html gzip | 917 B | 917 B | ✓ |
link.html gzip | 926 B | 926 B | ✓ |
withRouter.html gzip | 913 B | 913 B | ✓ |
Overall change | 2.76 kB | 2.76 kB | ✓ |
Serverless Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
buildDuration | 11s | 11s | |
nodeModulesSize | 61 MB | 61 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.js gzip | 6.25 kB | 6.25 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..e3d8.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 56.3 kB | 56.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.78 kB | 6.78 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.5 kB | 51.5 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.js gzip | 1.24 kB | 1.24 kB | ✓ |
_error.js gzip | 3.15 kB | 3.15 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.03 kB | 2.03 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.86 kB | 7.86 kB | ✓ |
Client Pages Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall decrease ✓
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_error.js gzip | 233 kB | 233 kB | |
404.html gzip | 1.32 kB | 1.32 kB | ✓ |
hooks.html gzip | 956 B | 956 B | ✓ |
index.js gzip | 233 kB | 233 kB | -44 B |
link.js gzip | 243 kB | 243 kB | |
routerDirect.js gzip | 241 kB | 241 kB | -139 B |
withRouter.js gzip | 241 kB | 241 kB | |
Overall change | 1.19 MB | 1.19 MB | -4 B |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
As discussed on call this increases requests per seconds dramatically as found from bench marking (see below).
Before this change
~/dev/zeit/next.js(canary) » ab -n 2000 -c 50 http://localhost:3000/error-in-ssr-render jj@lime
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 200 requests
Completed 400 requests
Completed 600 requests
Completed 800 requests
Completed 1000 requests
Completed 1200 requests
Completed 1400 requests
Completed 1600 requests
Completed 1800 requests
Completed 2000 requests
Finished 2000 requests
Server Software:
Server Hostname: localhost
Server Port: 3000
Document Path: /error-in-ssr-render
Document Length: 2737 bytes
Concurrency Level: 50
Time taken for tests: 15.493 seconds
Complete requests: 2000
Failed requests: 0
Non-2xx responses: 2000
Total transferred: 5960000 bytes
HTML transferred: 5474000 bytes
Requests per second: 129.09 [#/sec] (mean)
Time per request: 387.317 [ms] (mean)
Time per request: 7.746 [ms] (mean, across all concurrent requests)
Transfer rate: 375.68 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.3 0 2
Processing: 27 382 289.5 307 1024
Waiting: 5 232 183.9 180 727
Total: 27 382 289.4 307 1024
Percentage of the requests served within a certain time (ms)
50% 307
66% 513
75% 607
80% 701
90% 811
95% 919
98% 985
99% 1019
100% 1024 (longest request)
After this change
~/dev/zeit/next.js(canary) » ab -n 2000 -c 50 http://localhost:3000/error-in-ssr-render jj@lime
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 200 requests
Completed 400 requests
Completed 600 requests
Completed 800 requests
Completed 1000 requests
Completed 1200 requests
Completed 1400 requests
Completed 1600 requests
Completed 1800 requests
Completed 2000 requests
Finished 2000 requests
Server Software:
Server Hostname: localhost
Server Port: 3000
Document Path: /error-in-ssr-render
Document Length: 2778 bytes
Concurrency Level: 50
Time taken for tests: 1.608 seconds
Complete requests: 2000
Failed requests: 0
Non-2xx responses: 2000
Total transferred: 6042000 bytes
HTML transferred: 5556000 bytes
Requests per second: 1243.70 [#/sec] (mean)
Time per request: 40.203 [ms] (mean)
Time per request: 0.804 [ms] (mean, across all concurrent requests)
Transfer rate: 3669.15 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.2 0 2
Processing: 19 39 9.6 38 81
Waiting: 5 23 7.2 22 77
Total: 19 39 9.7 38 81
Percentage of the requests served within a certain time (ms)
50% 38
66% 42
75% 44
80% 44
90% 47
95% 54
98% 80
99% 81
100% 81 (longest request)
Stats from current PRDefault Server ModeGeneral Overall increase
|
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
buildDuration | 8.9s | 8.9s | |
nodeModulesSize | 61 MB | 61 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.js gzip | 6.25 kB | 6.25 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..e3d8.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 56.3 kB | 56.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.78 kB | 6.78 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.5 kB | 51.5 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.js gzip | 1.24 kB | 1.24 kB | ✓ |
_error.js gzip | 3.15 kB | 3.15 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.03 kB | 2.03 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.86 kB | 7.86 kB | ✓ |
Client Pages Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Rendered Page Sizes
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
index.html gzip | 918 B | 918 B | ✓ |
link.html gzip | 928 B | 928 B | ✓ |
withRouter.html gzip | 915 B | 915 B | ✓ |
Overall change | 2.76 kB | 2.76 kB | ✓ |
Serverless Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
buildDuration | 10.2s | 11.6s | |
nodeModulesSize | 61 MB | 61 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.js gzip | 6.25 kB | 6.25 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..e3d8.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 56.3 kB | 56.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.78 kB | 6.78 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.5 kB | 51.5 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.js gzip | 1.24 kB | 1.24 kB | ✓ |
_error.js gzip | 3.15 kB | 3.15 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.03 kB | 2.03 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.86 kB | 7.86 kB | ✓ |
Client Pages Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall decrease ✓
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_error.js gzip | 233 kB | 233 kB | |
404.html gzip | 1.32 kB | 1.32 kB | ✓ |
hooks.html gzip | 958 B | 958 B | ✓ |
index.js gzip | 233 kB | 233 kB | |
link.js gzip | 243 kB | 243 kB | -225 B |
routerDirect.js gzip | 241 kB | 241 kB | -350 B |
withRouter.js gzip | 241 kB | 241 kB | |
Overall change | 1.19 MB | 1.19 MB | -190 B |
Stats from current PRDefault Server ModeGeneral Overall increase
|
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
buildDuration | 9.7s | 9.3s | -354ms |
nodeModulesSize | 61 MB | 61 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.js gzip | 6.25 kB | 6.25 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..e3d8.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 56.3 kB | 56.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.78 kB | 6.78 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.5 kB | 51.5 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.js gzip | 1.24 kB | 1.24 kB | ✓ |
_error.js gzip | 3.15 kB | 3.15 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.03 kB | 2.03 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.86 kB | 7.86 kB | ✓ |
Client Pages Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Rendered Page Sizes
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
index.html gzip | 918 B | 918 B | ✓ |
link.html gzip | 928 B | 928 B | ✓ |
withRouter.html gzip | 915 B | 915 B | ✓ |
Overall change | 2.76 kB | 2.76 kB | ✓ |
Serverless Mode (Increase detected ⚠️ )
General Overall increase ⚠️
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
buildDuration | 10.4s | 10.3s | -67ms |
nodeModulesSize | 61 MB | 61 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.js gzip | 6.25 kB | 6.25 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..e3d8.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 56.3 kB | 56.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.78 kB | 6.78 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.5 kB | 51.5 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.js gzip | 1.24 kB | 1.24 kB | ✓ |
_error.js gzip | 3.15 kB | 3.15 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.03 kB | 2.03 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.86 kB | 7.86 kB | ✓ |
Client Pages Modern
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | Timer/next.js hotfix/externalize-next-server | Change | |
---|---|---|---|
_error.js gzip | 233 kB | 233 kB | |
404.html gzip | 1.32 kB | 1.32 kB | ✓ |
hooks.html gzip | 958 B | 958 B | ✓ |
index.js gzip | 233 kB | 233 kB | |
link.js gzip | 243 kB | 243 kB | |
routerDirect.js gzip | 241 kB | 241 kB | |
withRouter.js gzip | 241 kB | 241 kB | -285 B |
Overall change | 1.19 MB | 1.19 MB |
It seems like this benefits pages using revalidate and/or fallback. Now the docker containers ( 4 of them, shared static folder ) go back to idle (~0.02% CPU) afer going through several catalog pages in just 4-9 seconds. |
Thanks for quick fix. It fixed the issue and we can also see ~20% less CPU usage between 9.0.5 and 9.3.5-canary.8. 👏 👏 👏 |
@jakubriedl thanks for the clear issue report, it really helped track down the issue 🙏 |
Any ETA for stable release of 9.3.5? Really look forward to it 💯 |
This reverts commit 1199c23.
This pull request fixes a few problems causing
next-server
to be bundled in the server-bundles:babelIncludeRegexes
for the server, as these were already published for Node compatibility.next-server
imports are now local, theisLocal
check short circuited them from being external: we now exclude these from the check.commonjs
external callback now generates an appropriate external import reference for the now-localized files (before, we importednext-server/lib/foo
—now, we import../../next-server/lib/foo
).This pull request re-externalizes the following modules, allowing v8's TurboFan to optimize the code execution paths and share them across pages:
Closes #11526
Closes #11724
x-ref #8613