Live data from Hacker News

How Fast can A Single Instance of Redis be?

docs.keydb.dev

21–30 of 79 posts

Re: How Fast can A Single Instance of Redis be?

#21
post #5

How is this different from what Solarflare ( https://twitter.com/Solarflare_Comm/status/11134717313798430... ) is doing with Cloud Onload? From what I understand they don't require any application changes and they work on any networking application.

DPDK and Solarflare Onload are conceptually similar since they're both OS bypass network stacks. DPDK is open source and portable but lower-level and more complex to use while Onload looks much easier to use but proprietary-ish.

Re: How Fast can A Single Instance of Redis be?

#22

Earlier quoted context omitted.

I assume the downtime is due to the HTTP server, not persistence.

That would be unusual. Most websites fall over due to a DB bottleneck long before the backends or HTTP servers see significant load.

Yep. Almost always the web server will not be able to connect to the db because of the limited connections + slowed db.

---

FWIW, the site is up for me.

Re: How Fast can A Single Instance of Redis be?

#23
post #15

IIUC the benchmark did not use pipelines and the numbers show that. Redis itself can outperform this by a factor of 10 with pipelining, and I'm betting the difference from the module won't be that big given such a setup (which is how you should ideally work anyway). Still, nice to see the modules API being put to interesting use cases.

[deleted]

Re: How Fast can A Single Instance of Redis be?

#25
I'd like to see the client code, see how it manages backpressure.

(I'm probably being thick; the benchmark code is probably linked and I'm just not seeing it.)

I recently maintained some nodejs & expressjs stuff. Neither the Redis clients (or the original developers of our stuff) have any concept of backpressure (throttling). In our case, HTTP request received would cause a Redis request. For whatever reason, expressjs (or nodejs) event loop thingie processes Request preempt other stuff. So Redis responses would pile up in Redis itself, causing Redis to ABEND (out of memory).

Trying to explain backpressure, queueing, throttling to a bunch of junior devs who LOVE LOVE LOVE nodejs... Definitely was not my favorite gig.

--

PS- I started using Redis a few gigs ago. I really wanted to hate it. I'm primarily a Java dev and was esthetically offended by the NoSQL fad. But turns out Redis is awesome. And antirez is now a personal hero. I truly wish I was more like him.

Re: How Fast can A Single Instance of Redis be?

#26
post #18
post #3

These numbers seem off. 4ms to store something in memory ? Even if it include network latency it should be able to improve further.

Most of the bottleneck is in the TCP stack. That's why user mode networking like this module does helps a lot.

TCP latency is on the order of dozens of us, not ms.

Valid question I'd say.

Re: How Fast can A Single Instance of Redis be?

#28
post #9
post #8

Hackernews hug of death already?

Maybe they should use this module that I can't read about to power their site. :P

Makes me feel a little better about my libµhttp/Objective-C/Objective-Smalltalk server (serving http://objective.st), which held up just fine to the HN hug of death, running on the smallest digital ocean droplet. :-)
Post reply on HN