Menu
Sign In Search Podcasts Charts People & Topics Add Podcast API Blog Pricing

Gerhard Lazu

๐Ÿ‘ค Speaker
1554 total appearances

Appearances Over Time

Podcast Appearances

all trying to be cached in memory.

Well, we have thousands at this point of MP3 files across all the podcasts, like since the beginning of time.

Large, large means anywhere from 30 to 40 megabytes to a hundred plus megabytes.

So that's, I mean, just think if you had to load a thousand files, take a hundred megabytes, that's a lot of memory that you need to have available.

And the problem is that once you store these large files, as we discovered, you get memory fragmentation.

In that, imagine that you have all the memory available, you keep storing all these files and at some point there's no more memory left.

Well, you need to see what can you evict from memory so that you can store the new file.

So imagine that you evict a few of those objects, but maybe they aren't big enough and you haven't evicted them fast enough.

So then you have like this big file that can't fit anywhere because the size is like the holes that you have in memory aren't big enough for this file to fit.

And there's no defragmentation or nothing like that that runs in the background, which means that even though technically you kind of would have space in the memory,

For the specific files, you may not.

And then it can't be stored in memory.

Now, the thing in Varnish is actually called, I kid you not, N underscore LRU underscore nuked.

So I think the connection to the nuke and to the book and to let it crash is right there.

So LRE-nuked, basically, it's like a forced eviction.

So it's an event where an object has to be evicted from the cache just to make room for a new one because the storage is full.