Phoenix 特性解析
· 阅读需 1 分钟
本文解析phoenix的特性
编程模型
Actor模型
实体聚合根
事务聚合根
单元测试
/**
* 划拨失败
*/
@Test
public void allocate_exceptFail() {
EntityAggregateFixture fixture = new EntityAggregateFixture();
// 向 A0 账户划拨 -1500 元,期待划拨失败
AccountAllocateCmd cmd = new AccountAllocateCmd("A0", -1500);
// 断言
fixture.when(cmd).expectRetFailCode().expectMessage(AccountAllocateFailEvent.class);
}
通讯模型
请求-响应
非回复
主动订阅
调用其他服务
事件发布
查询模型
Query-Model
最终一致性读 基于数据库query
QueryCommandHandler
线性一致性读
运行模型
- dataSharding
- 聚合根飘逸