V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
beego
tanxnative
V2EX  ›  Go 编程语言

DDD 下,领域事件如何高性能存储,并提供给下游计算出查询模型

  •  
  •   tanxnative · 98 天前 · 817 次点击
    这是一个创建于 98 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位大佬,在学习落地 DDD 过程中,我产生了以下疑惑

    现在使用到的技术栈: cloudevents,istio,knative,mongodb

    准备自己做一个领域事件存储,推送的中间件,主要满足以下场景:

    1.事件版本乐观并发控制(例如:聚合 1,已产生 1,2 事件,那么再发送事件 2,则产生错误)

    2.使用 cloudevents 消息协议

    3.原生支持 knative 的 broker,tigger 等 crd

    3.支持层级存储,已产生快照的消息将慢慢存储到冷存储层

    4.支持类似 pulsar 的容灾模式订阅

    5.如果能直接接入到 flink 中就更好了

    请问一下各位,这方面开源社区中有类似的中间件吗? 如果没有,自己做这样的中间件有哪些关键技术呢,可以借鉴到开源社区中的那些方案吗?

    3 条回复    2021-07-16 16:53:03 +08:00
    demobin
        1
    demobin   98 天前
    mq 系统吧,很多。。。在孵化的 eventmesh 我个人认为就是做你说的这个的。。。不过那个也还在早期阶段
    demobin
        2
    demobin   98 天前
    eventmesh 好像是抽象了一个 driver 层,目前用的 rocketmq,如果你要用 go 的话 nsq 也是 mq
    demobin
        3
    demobin   98 天前
    我对事件驱动工作流的云原生落地实践还是很感兴趣的,可以多聊一聊。。。按 netfilx 的说法是,很好,但是容易简单的事情复杂化
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2294 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 17ms · UTC 13:31 · PVG 21:31 · LAX 06:31 · JFK 09:31
    ♥ Do have faith in what you're doing.