Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法为一个redis数据存储运行多个读取进程?_Redis - Fatal编程技术网

有没有办法为一个redis数据存储运行多个读取进程?

有没有办法为一个redis数据存储运行多个读取进程?,redis,Redis,我目前正在使用redis server的一个实例运行redis。我的应用程序大约有10%是写的,其余是读的。我对redis有点陌生,但是IIUC,redis的单线程特性意味着每个请求都是串行处理的,因此,例如Read#1将在Read#2之前进行完整处理,等等。这似乎为性能方面的改进留下了空间,因为读取将在内存延迟上阻塞很长时间,而它们可以并行执行 redis对此有解决方案吗?有没有办法通过并行处理读取请求来实现更高的容量?您可以创建只读从属(复制)来卸载读取。因此,每个请求都可以路由到不同的实例

我目前正在使用redis server的一个实例运行redis。我的应用程序大约有10%是写的,其余是读的。我对redis有点陌生,但是IIUC,redis的单线程特性意味着每个请求都是串行处理的,因此,例如Read#1将在Read#2之前进行完整处理,等等。这似乎为性能方面的改进留下了空间,因为读取将在内存延迟上阻塞很长时间,而它们可以并行执行


redis对此有解决方案吗?有没有办法通过并行处理读取请求来实现更高的容量?

您可以创建只读从属(复制)来卸载读取。因此,每个请求都可以路由到不同的实例

此外,多个从机可以在一台机器上运行


请参见

在假设需要并行化之前,您是否实际测试过?您是否对整个过程中的峰值有任何预计?