For years I ran my homelab boxes with swap turned off entirely. The logic felt sound: I had RAM to spare, swapping is slow, and if a process wants more memory than the machine has, I'd rather the OOM killer made a quick decision than watch the whole thing grind into a thrashing puddle. Plenty of people online agreed with me, loudly.
The trouble is that "swap is for when you run out of RAM" is the wrong mental model. The kernel uses swap to evict cold anonymous pages so it can use that RAM for cache. With no swap, those cold pages stay resident forever, and the only memory the kernel can reclaim under pressure is the page cache, the very thing you want to keep. So swappiness=0 plus no swap doesn't make the machine faster, it just gives the kernel fewer options.
What I settled on, finally: a small swap file (a couple of gigs, sized so a genuine runaway still hits the OOM killer before it can swap to a crawl) and zram on top for a compressed in-RAM swap device that takes the pressure first. swappiness back at a sane default. The boxes feel the same day to day and behave far better when something briefly overcommits.
I should have stopped treating it as a debate and started treating it as a tuning knob years ago.