When using the up API with process management tools like upstart on Ubuntu there is no clean way to stop the up server cleanly: it should provide a close() or shutdown() function that closes all network ports, shuts down all workers (and their associated processes) and exits completely. Right now I've had to jury-rig a process.exit(0) whenever upstart sends it a TERM signal, but it should tidy up behind itself.