To answer:
In node.js, how does require() work? Does it keep the required function in memory? or doest it read the file anew?
In node.js when a require is performed it will cache the module being loaded so each further require call will load this from memory, rather than from disk as an optimisation. See: http://nodejs.org/api/modules.html#modules_caching