3 ms·
> A new pid is always more than the previously assigned pid during an OS uptime[1] This is not universal. Pids can be reused in unixes. The footnote seems to
by loeg 3y ago
> A new pid is always more than the previously assigned pid during an OS uptime[1]
This is not universal. Pids can be reused in unixes. The footnote seems to be missing when I went to see if it provided this context.
> Signals are plenty fast. Cloudflare benchmarked 404,844 1KB messages per second. That can suit most performance needs.
Uh, how is Cloudflare sending 1kB messages with signals? Neither this article nor the linked Cloudflare post seem to elaborate on this.
- jandrese 3y agoThat's a good question. Maybe set up 1kb of shared memory and you notify the far process that it is ready via a signal? Seems a bit clunky.
- loeg 3y agoCloudflare's table has a separate row for shared memory, so, who knows.
- Denvercoder9 3y ago> Uh, how is Cloudflare sending 1kB messages with signals? Neither this article nor the linked Cloudflare post seem to elaborate on this. Cloudflare links to the code they used; it doesn't actually seem to transfer any message (note that the README there also marks unix signals as broken): https://github.com/goldsborough/ipc-bench/blob/master/source/common/signals.c https://github.com/goldsborough/ipc-bench/blob/master/source...
- toth 3y agoIf you look at the link to the Cloudfare post [1], they are comparing a bunch of different IPC methods. I bet what I did is for all the other ones (shared memory, mmaped files, unix sockets, etc) they did send 1KB messages, but for signals they are just sending the signal and associated int. It's the only thing that makes sense to me. [1] https://blog.cloudflare.com/scalable-machine-learning-at-cloudflare/ https://blog.cloudflare.com/scalable-machine-learning-at-clo...
- generalizations 3y agoIn FreeBSD at least, PIDs can also be randomized.
- goodyduru 3y agoAuthor here. I've corrected the errors. Thanks!