在man pages和程序员单证套接字选项SO_REUSEADDR,并SO_REUSEPORT针对不同的操作系统,不同的,往往非常混乱.有些操作系统甚至没有选项SO_REUSEPORT.WEB中充满了关于此主题的矛盾信息,并且通常您可以找到仅对特定操作系统的一个套接字实现的信息,这些信息甚至可能在文本中没有明确提及.
那究竟有什么SO_REUSEADDR不同SO_REUSEPORT呢?
系统是否没有SO_REUSEPORT更多限制?
如果我在不同的操作系统上使用任何一个,那么预期的行为究竟是什么?
我已经调查了Next JS 文档以及类似的问题,例如使用 Next.js 和 TypeScript 开发中的慢页面构建时间(这是 TypeScript 特定的 - 这个问题涉及 JavaScript,不涉及编译 TypeScript)
我正在使用 next.js 10.0.9 并且运行后next,我的应用程序需要大约 50 秒来构建并开始响应 HTTP 请求。
进行更改后,还需要 12 秒才能重建。与其他流行的 JS 框架相比,这似乎要慢得多。
更多详情:
npm run dev简单地运行next,接下来需要大约 50 秒才能响应(就在compiled successfully打印之后。这意味着诸如git bisect查找错误引入位置之类的任务非常缓慢,因为在检查每个提交后,接下来必须进行整整 1 分钟的重建。
$ npm run dev
> hl-alpha-frontend@1.0.0 dev /home/mike/Code/myapp/alpha/frontend
> next
ready - started server on 0.0.0.0:3000, url: http://localhost:3000
info - Loaded env from /home/mike/Code/myapp/alpha/frontend/.env.local
info - Loaded env from /home/mike/Code/myapp/alpha/frontend/.env.development …Run Code Online (Sandbox Code Playgroud)