They both install node.exe into C:\Program Files (x86)... so I'm wondering what the actual difference is. I know that there is some because node-sqlserver
module is failing on our machine and it does so in different ways for x86 and x64 versions of Node.
Can somebody explain the difference for me? Thanks.
The x64 installer installs the 64 bit version of node which is compiled against the 64 bit version of V8. The node-sqlserver package is a native module which means it needs to be compiled against the matching version of node. IE: It will fail if you are using a pre-compiled, 32 bit version of the module against the 64 bit version of node.
Other than the typical differences between 32 & 64 bit applications (larger address space, use of 8 bytes for addresses instead of 4 bytes), node doesn't differ between the two versions.
This link gives a good summary of the main differences between the x86 and x64 processor architectures, and may help you understand your question.
Essentially, x86 and x64 have different instruction sets, and so it might be better somehow to install it differently, so as to take more advantage of the features offered by each instruction set.