DenoDDeno
Powered by
HexagonH
Denoβ€’3y agoβ€’
13 replies
Hexagon

IPC solution for a process manager

πŸ‘‹

I'm at day 7 of working on Pup (https://github.com/hexagon/pup) - a universal process manager run by Deno. Next step towards
1.0.0
1.0.0
is to allow one instance of pup to restart a process of another instance. Something like

pup
pup
- Boots up the process ecosystem defined in
pup.json
pup.json
of the current directory

then

pup --restart --id task-1
pup --restart --id task-1
- Restart process named
task-1
task-1
in the main process, print results, and exit.

What are the options on this in Deno, while keeping everything nice and secure. Is there a stable IPC solution ready for Deno yet? Security considerations?

The first that comes to mind is to use unix sockets, with maybe a common secret key defined in
pup.json
pup.json
, that way, even if a evil process have access to the unix socket, it won't be able to command processes without the secret key. This would make the actual file permissions (read) to
pup.json
pup.json
control who can control the process manager. Of cours normal unix socket permissions would be handled in some way. Good or bad? Cross platform considerations? Is the secret totally useless?
Deno banner
DenoJoin
Chat about Deno, a modern runtime for JavaScript and TypeScript.
20,934Members
Resources
Recent Announcements

Similar Threads

Was this page helpful?

Similar Threads

IPC (ZeroMQ)
mpcrefMmpcref / help
2y ago
Learning Process for Web Development?
BenBBen / help
17mo ago
piping for async sub process
dan.the.discloserDdan.the.discloser / help
4y ago