Knative Eventing:Sources、Sinks与Broker深度解析
1. 云事件数据与扩展
在Knative的事件处理中,以PingSource为例,从 kn source ping describe 的输出和截图可知,PingSource的CloudEvents数据对象中包含了 {"foo": "and likewise bar"} ,它是 data 的直接子对象,而非存于 data.body 字段, data.body 仅为占位符。
关于扩展(Extensions),它是CloudEventOverrides的序列化名称,属于任何Source的一部分。若设置了覆盖值,Triggers会将其视为实际值,这在添加上下文(如在跟踪框架中)时很有用。不过,扩展是早期为增加设计灵活性的遗留方案,如今大多已被duck types取代,不建议使用。
2. Sink的两种目标方式
Sink是CloudEvents的目标地址,有两种指定方式:
- URI方式 :之前的示例中常将Sink定位为URI,如 http:// 或 https:// 开头的地址。
- Ref方式 :即引用另一个Kubernetes记录。例如:
$ kn source ping update ping-pl
超级会员免费看
订阅专栏 解锁全文
25

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



