分布式架构:Kafka、swarm等

zwghvu4y  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(321)

我正在寻找有关分布式系统的最佳体系结构组织的提示,该系统具有以下特点:
在一台或多台计算机上,每分钟将提供一系列编码文件(大约每分钟100个文件或1gb/分钟)
有必要在集群中处理这些文件以解码它们。每个文件在几个表中生成行。有多种编码类型。
每个文件只能处理一次
这些表行需要插入到数据库中
数据库是分布式的,并且已经在云中可用。
到目前为止,我正在评估两种可能性:
使用docker swarm处理编码文件并将数据插入数据库。
缺点:在数据库中插入数据所花费的时间比以后使用累加器执行大容量插入所花费的时间要长。待插入的废物处理资源)
使用apachekafka连接到所有提供文件的主机,将它们放入流或批处理中,并对它们进行处理。随后,将记录抛出到输出流中以插入到数据库中。
缺点:kafka集群的伸缩性比较困难,因为主题的数量比较大,解码文件的处理类型不同,对文件的处理要求正好是一次

uelo1irk

uelo1irk1#

swarm只是将应用程序组织在跨多个主机的容器中。我看不出它与您的应用程序体系结构有什么关系。如果您遵循12factor.net的思想来设计分布式系统,那么任何容器编排器都可以工作。

相关问题