-
Notifications
You must be signed in to change notification settings - Fork 11
/
TODO
14 lines (14 loc) · 1.61 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1. (DONE) Save the PID of the master into a file. This can be tricky when handling master restarts. Should lock?
2. (DONE) Don't kill slaves with open connections.
3. Use fork() to start the workers instead of spawn
4. (DONE)unit / integration tests - any ideas on how to test fugue?
5. (DONE) review the master / worker protocol for passing in the server socket
6. (DONE) Review the code that synchronously tries to fetch the file descriptor from the original master into the new respawned master (lib/fugue.js lines 72 - 91) - they're a bit too hacky - try and remove the recvMsg cycle...
7. Monitor request timeouts (as Unicorn does) - only plausible for HTTP Servers, though (??)
8. (DONE) Don't hardcode path for unix socket. Make it a temporary random file and pass it around on environment?
9. Somehow delete master sockets that are not being used. This can be tricky, since master socket paths are passed around to workers and new masters.
10. (DONE) Tests for these features: set gid, uid; set working dir; Redirect stdout to log files; daemonize properly.
11. (DONE) On sudden master death, somehow the workers should eventually realize that their master has died and kill themselves.
12. (DONE) Worker should notify master that he is also listening, so master can more accurately count him in in order to invoke the options.started callback.
13. (DONE) Worker should have a timeout when shutting down to prevent a client from hanging the process forever. Should be an option. default = 1 min?
14. Support a development mode, where any changes to the code trigger the master restart, much like nodemon - http://github.com/remy/nodemon