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_Jedis - Fatal编程技术网

Redis 绝地基准-绝地有多快

Redis 绝地基准-绝地有多快,redis,jedis,Redis,Jedis,我正在使用绝地连接到Redis并将数据推送到列表中。我正在对JSON数据使用rpush 以下是我所做的步骤: 从Rabbitmq获取数据 从JSON数据收集信息,并准备一个键、值对 使用键和值将数据推入redis 我看不到我的代码每秒扩展超过3000个请求 注: 我没有使用管道,每条消息都会导致获取绝地资源,将其添加到redis并关闭资源。在redis中保持更快的选项有 流水线 绝地连接池 为了避免: 3.无需频繁打开/关闭资源,即打开资源并重新使用 好链接: 我是如何解决问题的: 我的设计非

我正在使用绝地连接到Redis并将数据推送到列表中。我正在对JSON数据使用rpush

以下是我所做的步骤:

  • 从Rabbitmq获取数据
  • 从JSON数据收集信息,并准备一个键、值对
  • 使用键和值将数据推入redis
  • 我看不到我的代码每秒扩展超过3000个请求

    注:


    我没有使用管道,每条消息都会导致获取绝地资源,将其添加到redis并关闭资源。

    在redis中保持更快的选项有

  • 流水线
  • 绝地连接池
  • 为了避免: 3.无需频繁打开/关闭资源,即打开资源并重新使用

    好链接:

    我是如何解决问题的:
    我的设计非常好。但我在所有测试中都将数据输入到同一个键中。当我开始将数据推送到不同的密钥中时,性能大大提高。

    我在代码中构建了一个缓存,缓存来自rabbitmq的消息,如果缓存大小达到10k,那么我将异步将数据添加到redis。现在,我可以看到每秒增加5到6k条消息。不同硬件和不同任务的性能差异很大。您的邮件大小是多少?使用莴苣,我很容易在本地机器上用单线程获得40k/s,用4线程获得120k。你可能不想知道“绝地有多快”,而是想知道“我在哪里消磨时间?”。使用java探查器。我的消息是一个json负载,大约500个字符,并使用RPUSH持久化。您需要在延迟上花费时间。您发送一个命令并等待结果。如果你把它们并行发送,你可以做更多的事情。还有,试试生菜。它对管道有很大帮助。