Node.js iisnode的性能非常慢

Node.js iisnode的性能非常慢,node.js,iisnode,Node.js,Iisnode,我发现iisnode比使用node命令慢 使用iisnode的方法很多,但是性能很差 我正在使用中的配置文件 你知道怎么加速吗 更新: 我注意到每个页面调用都将重新连接一个新的mongodb连接 如何防止这种情况发生?这里有一个提示,建议在Windows 64位服务器上将Node.js与IIS7集成。下面的提示还解决了iisnode的一些性能问题,并演示了如何使用Node.js本机扩展 总结: 创建新的非托管集成32位应用程序池 专用于node.js。其他应用程序不应使用此池 这也适用于64位,

我发现iisnode比使用node命令慢

使用iisnode的方法很多,但是性能很差

我正在使用中的配置文件

你知道怎么加速吗

更新:

我注意到每个页面调用都将重新连接一个新的mongodb连接


如何防止这种情况发生?

这里有一个提示,建议在Windows 64位服务器上将Node.js与IIS7集成。下面的提示还解决了iisnode的一些性能问题,并演示了如何使用Node.js本机扩展

总结:

创建新的非托管集成32位应用程序池 专用于node.js。其他应用程序不应使用此池

这也适用于64位,但一些node.js本机扩展(如Coconut2D)需要32位,因为SQLite包装。如果您不使用本机扩展,那么您可以一直使用64位

下载:iisnode-core-iis7-v0.1.19.0-x64.msi

使用以下命令安装:msiexec/i iisnode-core-iis7-v0.1.19.0-x64.msi WOW=1。这将在64位计算机上安装32位版本的iisnode。请注意,iisnode.dll将安装在C:\Program Files x86\iisnode\iisnode.dll中

下载node.js的32位版本,例如node-v0.12.0-x86.msi,并将其安装在C:\nodejs中

创建新的应用程序池

Name: node.js Managed pipeline mode: Integrated 在server.js中,确保有process.env.PORT

将以下web.config放在web根目录中,例如C:\hostingspace\…\wwwroot。这将使IIS7能够处理任何非节点文件,如图像、静态html文件和xml文件,并让node.js只处理自己的服务器端脚本

让IIS处理静态文件并在服务器上运行服务器端脚本 js并排是一种强烈推荐的做法,它确实提高了 网站的性能

在本例中,我使用重写规则使用iisnode处理.asp文件。将*.asp*替换为node.js服务器脚本扩展名,例如*.njs*。注意,通配符模式中没有根斜杠;这一点很重要,也是模式末尾的最后一点

.NET Framework Version: No Managed Code Enable 32-Bit Applications: True Identity: administrator C: cd "C:\HostingSpaces\...\wwwroot" "C:\nodejs\node.exe" "C:\HostingSpaces\...\wwwroot\server.js" var http = require('http'); http.createServer(function (req, res) { ... your code here ... }).listen(process.env.PORT); var http = require('http'); var Coconut2D = require("Coconut2D.node"); http.createServer(function (req, res) { ... your code here ... }).listen(process.env.PORT);