#microservices #consuming #join #state #read #skew #frontier

coherent

Coherent 是一个用于消费微服务状态的 Rust 库。

1 个不稳定版本

0.0.1 2022年12月26日

#5 in #frontier

MIT/Apache

2KB

Coherent

Coherent 是一个用于消费微服务状态的 Rust 库。

在消费微服务时,一个问题就是数据的形状往往不是我们想要的。Coherent 允许进行转换和连接

当我们连接多个来源时,我们可能会遇到读取偏差。由于每个微服务来源都是异步的,因此可能在收到依赖项之前收到关于某个项的事实。例如,想象一个场景,客户提交了一个订单。如果我们作为一个服务消费者从 Orders 微服务那里体验到延迟,我们可能会在知道订单本身之前收到 Payments 微服务的确认!处理读取偏差给微服务消费者带来了负担。Coherent 通过将连接前沿推进到所有连接来源的连贯点上解决这个问题。任何给定来源的前沿可以定义为最新事实/消息的时间、心跳或使用时间窗口。

示例

  • 从 Kafka 消费,转换并填充 Redis 缓存

无运行时依赖