holochain / n3h

nodejs implementation of holochain networking / p2p backend process
48 stars 7 forks source link

terminate after last ipc connection closes #107

Closed neonphog closed 5 years ago

ddd-mtl commented 5 years ago

@lucksus Yep. A workaround with this would be to have conductor create a dummy IPC connection that it controls so n3h stays alive. Ideally since Conductor creates the subprocess, it should control its destruction.

neonphog commented 5 years ago

Thanks for checking that @lucksus ! Yeah, it's a tricky situation, n3h currently only has knowledge of core's continued existence through the ipc connections. As @ddd-mtl mentions, if conductor were to open a "keep-alive" connection that sent ping requests say every 10 seconds or something, it wouldn't be that much overhead, and should be fairly straight forward to implement given the existing websocket code in the net crate.

Let us know what you think, I'm happy to write the keep-alive module.

zippy commented 5 years ago

https://github.com/holochain/holochain-rust/pull/1582 now has the keep-alive. Does it need to actually send the ping requests?

neonphog commented 5 years ago

holochain/holochain-rust#1582 now has the keep-alive. Does it need to actually send the ping requests?

n3h is sending ping requests to open connections, since 1582 was implemented using p2pnetwork, it should auto-respond to those ping requests, so I think we're good :+1: