diff options
Diffstat (limited to 'vendor/github.com/ftrvxmtrx/fd/README.md')
-rw-r--r-- | vendor/github.com/ftrvxmtrx/fd/README.md | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/vendor/github.com/ftrvxmtrx/fd/README.md b/vendor/github.com/ftrvxmtrx/fd/README.md new file mode 100644 index 0000000..7a8a239 --- /dev/null +++ b/vendor/github.com/ftrvxmtrx/fd/README.md @@ -0,0 +1,25 @@ +# fd + +Package fd provides a simple API to pass file descriptors +between different OS processes. + +It can be useful if you want to inherit network connections +from another process without closing them. + +Example scenario: + + * Running server receives a "let's upgrade" message + * Server opens a Unix domain socket for the "upgrade" + * Server starts a new copy of itself and passes Unix domain + socket name + * New copy starts reading data from the socket + * Server sends its state over the socket, also sending the number + of network connections to inherit, then it sends those connections + using fd.Put() + * New server copy reads the state and inherits connections using fd.Get(), + checks that everything is OK and writes an "OK" message to the socket + * Server receives "OK" message and kills itself + +## Documentation + +[fd on godoc.org](http://godoc.org/github.com/ftrvxmtrx/fd) |