| ▲ | upmostly 13 hours ago | |||||||||||||||||||||||||||||||||||||||||||
The irony isn’t lost on us, trust me. We spent a while debating whether to even publish this one. But yeah, the page cache point is real and massively underappreciated. Modern infrastructure discourse skips past it almost entirely. A warm NVMe-backed file with the OS doing the caching is genuinely fast enough for most early-stage products. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | tracker1 9 hours ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Definitely appreciate the post and the discussion that has come from it... While I'm still included to just reach for SQLite as a near starting point, it's often worth considering depending on your needs. In practice, I almost always separate the auth chain from the service chain(s) in that if auth gets kicked over under a DDoS, at least already authenticated users stand a chance of still being able to use the apps. I've also designed auth system essentially abstracted to key/value storage with adapters for differing databases (including SQLite) for deployments... Would be interested to see how LevelDB might perform for your testing case, in that it seems to be a decent option for how your example is using data. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | vovanidze 13 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
props for actually publishing it tbh. transparent engineering takes are so rare now, usually its just seo fluff. weve basically been brainwashed to think we need kubernetes and 3 different databases just to serve a few thousand users. gotta burn those startup cloud credits somehow i guess. mad respect for the honesty though, actually makes me want to check out db pro when i finally outgrow my flat files. | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | grep_it 12 hours ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||
Except that eventually you'll find you lose a write when things go down because the page cache is write behind. So you start issuing fsync calls. Then one day you'll find yourself with a WAL and buffer pool wondering why you didn't just start with sqlite instead. | ||||||||||||||||||||||||||||||||||||||||||||