Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DDD整改若干意见 #1177

Closed
KouShenhai opened this issue Jan 23, 2024 · 21 comments
Closed

DDD整改若干意见 #1177

KouShenhai opened this issue Jan 23, 2024 · 21 comments
Assignees

Comments

@KouShenhai
Copy link
Owner

KouShenhai commented Jan 23, 2024

遇到的问题?(你们有思考这些问题?)
1.既然是ddd,那ddd怎么根据业务逻辑抽象领域模型
2.充血模型和贫血模型有什么区别?怎么选择?之前面向过程的代码怎么转换成面向领域设计的代码?
3.事件可以溯源,那是不是就需要存储下来,是不是会牵扯到大量数据存储问题?分库分表?分区?主从复制/读写分离?
4.底层由MQ发布事件,是不是就涉及MQ相关的问题?消息重复?消息丢失?消息堆积?消息消费的顺序?
5.消息消费失败,是走消息重试?还是走定时任务重新发布?
6.只针对单体好处理?这个项目是多租户,微服务架构,读取与写入数据,怎么处理多数据源切换?
7.每个服务都需要处理所有的事件?
8.Seata Saga模式怎么改造?

@KouShenhai KouShenhai self-assigned this Jan 23, 2024
@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 24, 2024

1.应用层直接调用基础层(只限于缓存与文件系统,其他需要走领域层)

create remove find modify findVersion

@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 25, 2024

领域事件

基于消息队列

@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 25, 2024

web
find、create、modify、remove page

gateway
modify create find remove page

@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 25, 2024

值对象不具备唯一标识

@KouShenhai
Copy link
Owner Author

值对象不应该唯一

cqrs

读模型直接走mapper
写模型走领域及mapper

@KouShenhai
Copy link
Owner Author

写 去掉返回值
读 有返回值

@KouShenhai
Copy link
Owner Author

lombok 禁止使用@Setter@DaTa

@KouShenhai
Copy link
Owner Author

@value 表示值对象

@KouShenhai
Copy link
Owner Author

领域事件投递到MQ消息可能会重复,因此,数据库增加事件ID,并且事件ID不能重复

@KouShenhai
Copy link
Owner Author

#1183
#1182
#1181
#1180

@KouShenhai
Copy link
Owner Author

事件溯源,消息发送成功则清除事件

@KouShenhai
Copy link
Owner Author

#1184

@KouShenhai
Copy link
Owner Author

#1185

@KouShenhai
Copy link
Owner Author

#1191

@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 30, 2024

定时任务(xxl-job) => 推送未执行成功的领域事件

@KouShenhai
Copy link
Owner Author

#1193

@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 31, 2024

事件溯源,消息发送成功修改事件状态

@KouShenhai
Copy link
Owner Author

KouShenhai commented Jan 31, 2024

lombok使用(非常重要)

@KouShenhai
Copy link
Owner Author

#1194

@KouShenhai
Copy link
Owner Author

#1195

@KouShenhai
Copy link
Owner Author

#1201

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant