NodeJS is a server-side JavaScript platform that uses Google's V8 JavaScript engine and a non-blocking I/O model. It allows for 100% CPU usage on a single thread by using an event-driven, non-blocking I/O model. NodeJS is well-suited for real-time applications and can handle more requests per second than traditional threaded servers like Apache while using less memory. It allows for common codebases and testing across front-end and back-end JavaScript applications using many popular frameworks. Comet applications also benefit from NodeJS's non-blocking I/O model which allows for long-held connections without dedicating a thread per connection.