Dojo
最新
最佳
搜索
订阅
解道Jdon
领域驱动设计
架构设计
热点话题
GitHub开源免费源代码
RUST语言
DevOps文章排行榜
产品经理
数据科学
数据分析
规则引擎
前端架构文章排行榜
幽默模因
更多话题
使用TypeScript和nextjs实现基于CQRS的微服务的银行API源码
22-05-09
banq
基于领域驱动设计、CQRS 和
事件溯源
的简单银行 API:
写了一个由两个
微服务
和一个 API 网关组成的银行账户 API 。我用 TypeScript 和 NestJS 实现了微服务。但是,使用Go编写 API 网关。
在这个项目中无缝地结合了
DDD
、CQRS 和事件溯源。由于 NestJS 没有官方的事件溯源模块,我自己编写了一个并在 NPM 上提供。最好别用。它没有经过现场测试。
技术特点
领域驱动设计、CQRS 和事件溯源相结合
NestJS 微服务作为 Monorepo,分为命令和查询
Go 中的 API 网关(HTTP 到 gRPC)
在 NestJS 生态系统中为 Event-Sourcing 创建了一个 NPM 包
使用 Kafka 作为
异步
事件流
使用 gRPC 作为同步传输协议
每个服务模式的数据库
由于最终一致性而确保幂等性
使用 MongoDB 作为写入数据库的 NoSQL 方法(事件溯源)
使用 PostgreSQL 作为读取数据库的 SQL 方法
将 Proto 文件存储在共享存储库中
除了应用程序,一切都被 docker 化了
Sagas 的简化用法
代码库
银行账户微服务
银行资金微服务
API 网关
事件溯源模块
原始文件的共享存储库
1
猜你喜欢
本站原创
《复杂软件设计之道:领域驱动设计全面解析与实战》
其他人在看