On Arch it uses zswap....
I wanted to use Debian, but too old packages for me... is Debian testing stable enough?
I run my personal workstations and laptops without swap, and with earlyoom[2], which results in applications getting killed before the machine reaches unresponsive state. I can only afford that because I trust my tools (vim, emacs, firefox, but most likely firefox) would not lose my session if they shutdown unexpectedly. I turn earlyoom off when I play games where I know memory usage will grow suddenly, but the game won't reach the limits of my machine. You can also whitelist specific applications in earlyoom, if I recall correctly.
Some people claim success configuring the kernel to use different I/O schedulers, but I haven't tried that yet.