4 ms·
Are we seriously discussing a benchmark that only runs 1000 operations? I don't even understand how it could take 20s to complete in any language on the server
by spullara 15y ago
Are we seriously discussing a benchmark that only runs 1000 operations? I don't even understand how it could take 20s to complete in any language on the server side and be correct code. Implement the Redis protocol and use the included redis-benchmark to test your server. On a decent Mac you should be able to hit 500k/s with pipelining and 25k/s without it.
- axbx 15y agoI immediately disregard anyone that doesn't show their benchmarks running for any amount of time that would reasonably be used in production. I have absolutely no problem with letting my stuff fire requests off on 12+ core machines for hours or days on end. And then repeat it. And again. Production means 24/7 and when I read your less than an hour benchmark on ANY test - well, that's just a not right.
- sausagefeet 15y agoTotally, you just don't see some things after a long time. I haven't read the code but people mentioned the author is using malloc in a lot of places, you wont' see ill effects from memory fragmentation with a quick benchmark, it could take hours or days to see how large of holes you have in your memory space.
- ootachi 15y agoAnd in Go, they aren't running long enough to see the GC kick in. I suspect the overhead of GC will be significant without tuning.
- caf 15y agoThe slowness actually appears to be down to his client implementation - see the comment by Clément Stenac on the original post.