consistent-hashing相关内容

如何以平衡的方式跨服务器分配(纸牌游戏桌)经销商?

我目前正在开发一种类似于二十一点的在线纸牌游戏,它将由一系列牌桌组成,其中每张牌桌都有一个“庄家"和多个人类玩家.经销商(计算机机器人)负责发牌和洗牌.表 将存储在 PostgreSQL 数据库表中,管理员可以添加/删除/编辑表. 游戏将由一个 Web 前端和一个 REST/websocket API 后端组成.我可能会使用 Kubernetes 和 Nginx 作为后端服务器的负载均衡器. ..

如何将分区添加到 Kafka 主题并在同一分区中保留相同的密钥消息?

要求在给定 Kafka 主题的同一分区中进行排序是很常见的.也就是说,具有相同键的消息应该进入相同的分区.现在,如果我想在正在运行的主题中添加新的分区,如何制作并保持一致性? 据我所知,默认的分区策略是修改 num-of-partition .当分区数量发生变化时(例如 4 到 5),某些消息可能会与具有相同键的先前消息落入不同的分区. 我可以想象实现一致的散列来自定义分区行为,但这可 ..
发布时间:2021-11-12 02:55:44 其他开发

如何在Kafka主题上添加分区,并在同一分区中保留相同的键消息?

通常需要在给定的Kafka主题的相同分区中订购.也就是说,具有相同密钥的消息应该进入相同的分区.现在,如果要在正在运行的主题中添加新分区,如何制作并保持一致性? 据我了解,默认的分区策略是对num-of-partition进行修改.当分区数更改时(例如4到5),某些邮件可能会与具有相同密钥的先前邮件落入不同的分区中. 我可以为实现自定义分区行为而实现一致的哈希来进行映像,但这可能是侵入 ..
发布时间:2021-05-04 21:13:15 其他开发

如何在服务器之间平衡地分配(纸牌游戏桌)发牌人?

我目前正在从事类似于二十一点的在线纸牌游戏,该游戏将由一系列桌子组成,其中每个桌子都有一个“经销商"和多个人类玩家.发牌人(计算机机器人)负责发牌和洗牌.表将存储在PostgreSQL数据库表中,管理员可以添加/删除/编辑表. 游戏将由一个Web前端和一个REST/websocket API后端组成.我可能会使用Kubernetes和Nginx作为后端服务器的负载平衡器. 我的问题.假 ..

infinispan中的自定义哈希函数

我使用的是Infinispan版本8.2,我已经知道节点何时将条目放入缓存,它会在密钥上使用其内部哈希并选择集群中的主节点。 我知道我们可以使用自定义哈希函数覆盖此哈希。但是我不知道从哪里开始以及如何开始。我搜索了很多文档和网站。但是,没有一个文档和网站 我希望有人对此提供帮助。 在此先感谢。 / p> 解决方案 如果您要谈论确定hashCode(这主要影响到映射Obje ..

群集分片客户端未与主机连接

经过最近的调查和栈溢出问题我意识到,与分片一致性哈希路由器相比,分片是更好的选择.但是我无法使2进程集群正常运行. 一个过程是种子,另一个过程是客户.种子节点似乎不断抛出死信消息(请参阅此问题的结尾). 此种子HOCON如下: akka { loglevel = "INFO" actor { provider = "Akka.Cl ..
发布时间:2020-07-16 19:45:58 其他开发

集群一致哈希池为相同映射生成新路由

我有一个包含2个命令行项目的解决方案,它们创建了一个带有种子和客户端进程的akka​​.net集群.种子启动集群,然后实例化一个consistent-hash-cluster-router,该路由器对实现我的接口"IHasRouting"的任何消息执行哈希映射.因此,任何(来自种子或客户端的)IHasRouting消息都应以该消息的散列在路由上的种子处结束. 项目正常启动,并且群集形成没有错 ..
发布时间:2020-07-16 19:44:45 其他开发

Akka ConsistentHashingRoutingLogic无法始终路由到同一调度程序线程

我正在尝试使用Akka的 ConsistentHashingRoutingLogic 来确保具有相同密钥的消息被路由到同一Actor。具有相同密钥的消息以FIFO顺序处理很重要。具有不同密钥的消息可以路由到不同的Actor,并可以自由地并行处理。我未在分布式模式下使用Akka。 消息实际上是从RabbitMQ代理读取的JSON消息,因此我的主演员收到AMQP消息并将路由键用作消息密钥。消息本 ..
发布时间:2020-06-03 18:50:44 Java开发

Memcached一致性哈希无法与4个服务器中的3个一起运行

故事 我有3个Memcached服务器在运行,我在其中一个或另一个关闭了服务器,以研究PHP-memcached在服务器无法访问时的行为. 我在PHP中定义了4台服务器,其中1台用于模拟大部分脱机的服务器(备用服务器).当我关闭1台服务器(=> 2仍在线)时,第三个->get()给我结果. 当我关闭另一台服务器(=> 1仍处于联机状态)时,它将找不到推送到最后一台服务器的对象. ..
发布时间:2020-05-08 18:43:14 PHP

一致性散列作为缩放写入的一种方式

我试图弄清楚我是否在正确的轨道上。我正在构建一个(实时)统计/分析服务,并使用redis来存储一些集合和散列。现在让我们假设我取得了一些成功,并且我需要向外扩展。哈希环技术看起来不错,但我有一个印象,它只适用于缓存场景。 如果一个节点出现故障,该怎么办?理论上,其密钥现在由其他节点拥有。实际上,他们不会有这些数据。它丢失了,对吧?与添加/删除节点相同。 我错过了一些基本的东西吗?这可能 ..
发布时间:2018-06-01 18:55:14 其他开发

MessageDigest在不同的机器上具有不同的哈希值

一台计算机在Windows Vista上运行32位Java,另一台运行在运行Windows Vista的另一台计算机上Mac OS上的64位Java。我不确定是因为MessageDigest是依赖于机器的,还是我需要明确指定某个地方的字符编码,或者是其他的东西。以下是 代码: public static boolean authenticate(String salt,String en ..
发布时间:2018-06-01 18:44:23 Java开发

编程语言选择实现分布式消息传递算法

基本上,我想实现以下算法,并分析如何使用这些算法构建的系统在不同的条件下运行。 Gossip协议 多个paxos 一致散列 我的兴趣在于这些算法。我基本上正在寻找一种编程语言,让我能够快速,深入地理解这些算法。 我应该选择哪种语言? Java,Scala,Erlang或其他任何东西。 目前,我知道Java和C ++。 解决方案 您可以尝试在Erlang中实现协 ..
发布时间:2017-08-27 12:38:15 Java开发