https://ahoowang.gitee.io/wow/
更新内容
- 特性(api): 新增
ConditionCapable
api. - 特性(query): 支持通过泛型
QueryService
类型声明获取注入实例 - 特性(bi): 提高自动生成的 ETL 脚本在低版本 ClickHouse 的兼容性
- 依赖(opentelemetry): 升级
o.opentelemetry:opentelemetry-bom
版本 到v2.2.0
- 依赖(openapi): 升级
springdoc
版本 到v2.4.0
- 依赖(build): 升级
ksp
版本 到v1.9.23-1.0.19
- 依赖(compensation): 升级
me.ahoo.coapi:coapi-bom
版本 到v1.0.6
- 依赖(dashboard): 升级
angular-cli
版本 到v17.3.0
- 依赖(dashboard): 升级
monaco-editor
版本 到^0.47.0
- 依赖(dashboard): 升级
ng-zorro-antd
版本 到v17.3.0
查询服务注册器
SnapshotQueryServiceRegistrar
用于自动将所有本地聚合根查询服务注册到 Spring
容器中。 开发者可以通过指定的 Bean Name
从 BeanFactory
中获取相应的 SnapshotQueryService
。
Bean Name
命名规则:聚合根名称 + ".SnapshotQueryService"
。
使用案例
构造函数注入
class OrderService( private val queryService: SnapshotQueryService<OrderState> ) { fun getById(id: String): Mono<OrderState> { return condition { id(id) }.single(queryService).toState() } }
字段注入
@Autowired private lateinit var queryService: SnapshotQueryService<OrderState>
根据 Bean Name 手动获取
val queryService = applicationContext.getBean("example.order.SnapshotQueryService") as SnapshotQueryService<OrderState>
执行分页查询
pagedQuery { pagination { index(1) size(10) } sort { "field1".asc() } condition { and { "field3" eq "value3" "field4" startsWith "value4" } or { "field3" eq "value3" "field4" startsWith "value4" } } }.query(queryService)
简介
Wow 是一个基于领域驱动设计和事件溯源的现代响应式 CQRS 微服务开发框架,历经多年生产环境验证。
旨在帮助开发者构建现代化的、高性能且易于维护的微服务应用程序,充分发挥领域驱动设计和事件溯源等模式优势的同时降低应用的复杂性以及实践成本。
值得一提的是,领域驱动设计和事件溯源并非微服务架构的专属,Wow 框架不仅适用于微服务开发,同样也可用于构建基于领域驱动设计的单体应用程序。
快速开始
使用 Wow 项目模板快速创建基于 Wow 框架的 DDD 项目
特性概览
架构图
商业智能是企业决策的关键支持,而数据则是商业智能的分析原料。业务数据越为丰富有价值,商业智能的分析结果越准确,决策也就更加可靠。
与传统架构有着显著差异,Wow 提供了实时聚合根状态事件(StateEvent
)和聚合命令(Command
)作为数据分析的数据源,同时极大降低了实时 ETL(Extract
, Transform
, Load
)的难度。
在传统架构中,实现实时 ETL 通常需要经过繁琐的流程,包括 DB->CDC->Process->DB
,而在 Wow 框架中,仅需一段简单的 SQL 脚本即可完成这一过程。
另外,在传统架构中,使用 CDC(MySql Binlog
)数据仅记录数据的变化,缺乏明确的业务语义。进行业务分析时,需要基于数据状态的变化推断出业务语义,这往往需要进行大量的数据处理。 相较之下,Wow 框架直接提供了聚合根状态事件和聚合命令作为数据分析的数据源,极大降低了数据处理的难度。
Wow 提供的实时同步机制将数据实时同步至数据仓库(ClickHouse),为实时数据分析提供了极大的便利。这种方法为商业智能提供了强有力的支持,构建了一个实时数据分析系统,使决策制定能够基于及时而准确的信息。
你可以在这里了解更多关于 Wow 商业智能。
操作审计
操作审计是企业中保障安全性和合规性的重要组成部分,同时也是对系统操作进行监控和追踪的关键手段。Wow 框架在这方面为企业带来了显著的优势。
通过记录聚合命令(Command
)作为操作审计的数据源,Wow 框架能够详细追踪系统中的各种操作。 这些记录不仅包含了操作本身的内容,还涵盖了操作触发的副作用(领域事件),为审计提供了更为全面和准确的数据基础。
相较于传统审计方法,Wow 框架的操作审计的数据源具备更加明确的业务语义,以及操作后产生的明确领域事件。
此外,Wow 框架提供的实时数据同步机制也为操作审计带来了便利,确保了审计数据的及时性和一致性。
了解更多关于 Wow 操作审计。
还没有评论,来说两句吧...