我正在设计一种分析数据的简单服务架构(近实时分析)。
我有一个数据源,这是我唯一的数据源,我认为它是高度可用的。
我使用此流中的数据的当前方式是运行EC2
计算机(AWS
),该计算机从该流中读取数据并将其生成到另一个流(Kinesis
)。
我的问题是我不能假设EC2
机器具有高可用性。
并行运行多台计算机是个坏主意,因为我的数据将被复制,每条记录将被处理两次(或者我运行的EC2
个实例的数量)。
该机器的可用性非常重要,因为它为我提供了连续的数据流,没有它,我的服务一无所获。
为了在我的架构的这一部分实现高可用性,我该怎么办?