相关疑难解决方法(0)

Redis是单线程的,那么它是如何进行并发I/O的呢?

试图掌握Redis的一些基础知识我遇到了一篇有趣的博客文章.

作者说:

Redis是带有epoll/kqueue的单线程,并且在I/O并发方面无限缩放.

我肯定误解了整个线程,因为我发现这个说法令人费解.如果程序是单线程的,它如何同时执行任何操作?如果服务器是单线程的话,为什么Redis操作是原子的呢?

有人可以就这个问题说清楚吗?

multithreading redis

152
推荐指数
2
解决办法
6万
查看次数

Redis - QPS,响应时间,连接数,响应大小和网络连接速度之间的相关性

作为我之前的问题的后续跟进,Redis如何实现高吞吐量和高性能?

我有以下问题

我已经看到Redis在行动,并对其能力印象深刻.想要更多地了解这种魔力.我已经看到,当Redis盒和查询盒更接近时,即使在高QPS(1kps)时,响应时间也是5ms.当它们在地理上更远时(数据中心与不同的数据中心相同),响应时间可达50毫秒.这只是网络延迟还是Redis必须保持一些开销,直到整个数据被刷新.

连接数可以影响Redis吞吐量吗?想象一下,Redis能够以500微秒的速度响应每个请求.并且假设1000个不同的客户端连接在给定实例上有1000个不同的请求.最后一个请求是否需要500muSec*1000 = 500ms?

响应大小可以在这里产生影响吗?想象一下,每个响应的大小为100 KB,Redis上的TCP连接必须等到最后一个数据包交付,如果网络连接速度慢,它会减慢Redis吗?

redis

4
推荐指数
1
解决办法
1115
查看次数

标签 统计

redis ×2

multithreading ×1