我正在设计一个系统,其中有一个主要的对象流,并且有多个工作人员,从这个对象产生一些结果。最后,有一些特殊的/唯一的工作人员(从图论的角度来说是一个“接收器”),它接受所有的结果,并将它们处理到某个被写入到某个DB的最终对象。
工人有可能依赖于其他工人的结果(因此,等待他们的结果)。
现在,我面临着几个问题:
值得一提的是,它不是一个实时应用程序,而是一个离线处理系统(即您可以访问DB并修改记录),但同时,它必须以“较高的速度”处理相对较多的对象。
关于技术,
我正在用Java开发这个系统,但我并不局限于特定的技术。
如果你能帮我完成系统的总体设计,我会很高兴的。
非常感谢!
发布于 2018-11-22 08:33:21
正如Peter所说,它实际上取决于用例。不过,也有一些一般性意见:
发布于 2018-11-24 10:18:53
一些额外的想法:
分布式流处理很快就变得非常复杂。如果您在上面构建一个提供高可用性和一次性语义的流处理框架,您的生活就会轻松得多。
https://stackoverflow.com/questions/53426418
复制相似问题