Gerhard Lazu
๐ค SpeakerAppearances Over Time
Podcast Appearances
And the property which I'm referring to is when you start the Varnish D, the daemon,
Varnish itself runs as a thread, and you have many, many threads that do different things.
So when we had these out-of-memory crashes, all that happened, the thread was killed, which means that the system as a whole didn't crash.
The VM didn't, the Firecracker VM didn't crash.
The application needed to restart.
It was just a thread that was using too much memory, and it restarted within seconds, as in maybe two seconds and everything was back to normal.
Obviously, the cache was cold, but...
It was good.
I mean, the VM, and that's why the memory looked a bit interesting in that it doesn't release all the memory.
The VM doesn't restart.
There's not many hangs.
It restarts and it crashes really, really quickly.
So that's a nice property.
So it's looking at the process.
It has looking at the process ID, which process uses the most memory.
And it's the same process that's asking for more memory.
So it just basically will just send a signal to that process and kill that process.
But that is just a thread that maps to a thread.
So Varnish itself didn't crash.
It's just a thread that maps to a process ID that crashed.