messaging_spike:长钉

时间:2024-05-18 13:44:32
【文件属性】:

文件名称:messaging_spike:长钉

文件大小:14KB

文件格式:ZIP

更新时间:2024-05-18 13:44:32

Go

Spike:异步消息处理 展示DDD和EIPatterns,以处理一些常见的异步和并发更新问题。 并发更新 乐观锁 矢量时钟 具有随机消息顺序的构建状态 场景:在采购模式下,事件几乎以随机顺序接收。 一种特定的事件类型会导致一种操作,在该操作中,需要其他类型的事件来提供所需的数据。 约束:当我们使用一个事件时,该事件被标记为已读,并且在处理过程中不再被使用。 在采购模式下,我们接收所有事件,但不允许编写事件。 从采购切换到处理模式 场景:消费者从采购模式开始,在此模式下,他们消费之前处理过的所有先前事件。 用例:部署/重新启动以建立内部状态。 要解决的问题:两个消费者可能以不同的顺序和速度接收事件。 邮件版本控制和迁移 场景:消息是持久的并且是不变的。 当内容结构/格式需要更改时,所有使用者都必须能够处理新旧消息格式。 这种“升级”逻辑应该分开(就像一个反腐败层一样),而不应纳入主要的


【文件预览】:
messaging_spike-master
----fair_fan_in_test.go(2KB)
----vector_clock_test.go(2KB)
----README.md(2KB)
----vector_clock.go(2KB)
----message_versioning_test.go(1KB)
----message_versioning_scenario.go(2KB)
----substates_scenario.go(4KB)
----optimistic_locking_scenario.go(1KB)
----source_to_process_test.go(5KB)
----source_to_process_scenario.go(5KB)
----optimistic_locking_test.go(1KB)
----fair_fan_in.go(696B)
----substates_test.go(2KB)
----.travis.yml(444B)
----vector_clock_scenario.go(1KB)

网友评论