对于 18k/s 吞吐量,Hazelcast 平均获取延迟 > 2 毫秒

问题描述

背景:我们正在评估可以替代 Redis 的 Hazelcast。

设置

  1. 单个子网(生产盒)下集群中的 3 个成员。每个成员拥有约 1.4GB 的数据。
  2. 近缓存已关闭。
  3. 每个成员有 1 个备份。
  4. 通过准备 Spring Boot jar 和缓存部署的代码作为嵌入式实现。
  5. 虚拟机配置:8C,31GB 内存
  6. 代码使用 IMAP 检索密钥并将其放入缓存中。

LoadTest:尝试以 18K/s 的其余 API 调用读取数据。 但是hazelcast 显示平均get 延迟大约为3-4 毫秒,我觉得应该以微秒为单位,因为我们已经在redis 设置中看到了很多get 命令延迟。 在此测试期间,CPU 负载约为 95%。

提供此延迟的成员的堆使用率约为 60%(承诺:7.85GB,已使用:4.68GB)。尽管集群中的所有成员都是如此。

需要帮助了解我的配置有问题,因此我无法在微秒内实现延迟?

用于启动嵌入式缓存的配置:

        config.addMapConfig(mapConfig());

        NetworkConfig networkConfig = config.getNetworkConfig();
        JoinConfig join = networkConfig.getJoin();
        join.getMulticastConfig().setEnabled(false);
        join.getTcpIpConfig().setEnabled(true).setMembers(
                Arrays.asList(
                        "ip1:5701","ip2:5701","ip3:5701"
                )
        );
        return config;```


解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...