gpt4 book ai didi

java - 如何使用数据库作为通信媒介的分布式应用程序实现最大并发性

转载 作者:行者123 更新时间:2023-12-01 05:50:41 26 4
gpt4 key购买 nike

我有一个类似于经典生产者消费者问题的应用程序。只是想检查所有可能的实现来实现它。问题是-

进程A:向数据库表中插入一行(生产者)

进程B:从表中读取M行,处理后删除读取的M行。

流程 B 中的任务:1.读取M行2. 处理这些行3.删除这些行

进程 A 的 N1 个实例,进程B的N2个实例同时运行。

每个实例在不同的机器上运行。

一些要求:如果进程 p1 正在读取 (0,M-1) 行。进程 p2 不应该等待 p1 直到它释放这些行上的锁,而是应该读取 (M,2M-1) 行。

最佳答案

我敢打赌,有比使用数据库作为生产者和消费者之间的交换器更好的并行处理方法。为什么不队列?您检查过为Map/Reduce设计的工具/框架吗? Hadoop、GridGain、JPPF 都可以做到这一点。

关于java - 如何使用数据库作为通信媒介的分布式应用程序实现最大并发性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4779578/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com