小编Pai*_*nts的帖子

如何在REST,CQRS和EventSourcing一起支持REST中的Command?

考虑以下针对Contact资源的粗粒度REST apis

POST          /api/contacts                             
GET           /api/contacts                             
GET           /api/contacts/:id                         
PUT           /api/contacts/:id                         
DELETE        /api/contacts/:id                         
Run Code Online (Sandbox Code Playgroud)

考虑使用事件源作为联系人资源,即验证命令并存储事件.因此必须存储每个事件,包括每个字段级别的更改.

CreateContactCommand -> | Contact("john", "doe", 25) | -> ContactCreatedEvent
FirstNameChangeCommand -> | Contact("jane", "doe", 25) | -> FirstNameChangedEvent
LastNameChangeCommand -> | Contact("jane", "dear", 25) | -> LastNameChangedEvent
AgeChangeCommand -> | Contact("jane", "doe", 30) | -> AgeChangedEvent
Run Code Online (Sandbox Code Playgroud)

现在,将REST和EventSourcing结合起来.

做REST,客户端如何与上述标准REST API进行通信以进行字段级更改,以便在服务器端REST端点生成命令?

主要问题是,如何设计REST API以便它还可以支持最终支持事件的命令?

如果有人能够阐明这一点,我们将非常感谢你的帮助.

api rest cqrs event-sourcing

15
推荐指数
1
解决办法
4933
查看次数

如何突然停止 akka 流 Runnable Graph?

我不知道如何立即停止 akka 流 Runnable Graph?如何使用killswitch来实现这一点?我开始使用 akka 流才几天。就我而言,我正在从文件中读取行并在流程中执行一些操作并写入接收器。我想要做的是,只要我想立即停止读取文件,我希望这可能会停止整个运行图。对此的任何想法将不胜感激。

提前致谢。

io scala akka akka-stream scala-streams

5
推荐指数
1
解决办法
3140
查看次数

标签 统计

akka ×1

akka-stream ×1

api ×1

cqrs ×1

event-sourcing ×1

io ×1

rest ×1

scala ×1

scala-streams ×1