Knative Eventing 中的 Sequences 和 Parallels 详解
1. 引入 Sequences
在分布式系统中,使用 Sources 和 Sinks 连接各个组件比较麻烦,Brokers 和 Triggers 虽简化了操作,但也存在一些问题,比如需要记住提供正确的 Triggers 集合并按正确顺序设置,而且 Brokers 可能成为架构中的瓶颈。Sequences 则是解决这些问题的一种方式,它能更直接地在不同位置之间移动流量,而无需经过中央枢纽。
使用 Broker 开始是一种简单灵活的方式,随着时间推移,你会在架构中发现“期望路径”。就像现实中,漂亮的铺设路径可能不是人们实际行走的路径,明智的做法是等待“期望路径”出现后再进行铺设。在分布式系统中,使用 Broker 和 Triggers 可以帮助找到“期望路径”,找到后就可以用 Sequence 替代。另外,截至目前, kn 不支持 Sequences(或 Parallels),所以实际使用 Sequences 时会使用 kubectl 。
2. 构建简单的 Sequence
为了演示 CloudEvents 如何进入、通过和离开 Sequence,我们来构建一个简单的 Sequence,目标架构如下:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(PingSource) --> B(Sequence)
超级会员免费看
订阅专栏 解锁全文
16

被折叠的 条评论
为什么被折叠?



