Jdon Framework 6.5beta发布

6.5版本引入了com.jdon.domain.dci.RoleAssigner,它是一个角色分配器,可以向任何模型中注入任何接口 (Mixin)当使用RoleAssigner, 我们就没有必要从带有元注释 @Introduce(“modelCache”) 和 @Around的仓储中首先获得一个模型对象。RoleAssigner可以手工对任何一个模型对象从外部进行事件注入或角色分配。提高了使用灵活度。

在6.5版本上,我们可以有两种不同风格的DCI+Domain Events实现:当我们有了领域模型对象时,可以通过其领域事件实现功能;当我们没有领域模型对象时,我们可以通过RoleAssigner对一个新构造的领域模型对象注入事件发送者角色,也可以使用领域事件实现各种功能。

6.5版本将原来的JdonFramework.jar拆解,分成以业务领域层为核心的新的JdonFramework.jar和JdonAccessory.jar等配件包,该包主要包含Struts1.x JdbcTemp和Hibernate和远程访问remote-hessian等包。这样做的目的是让JdonFramework更加突出其业务领域层框架的特点。

使用6.5可以更自由方便实现DCI和领域事件的结合,这里有一篇以机器人为案例,展示从分析设计到代码实现的全过程,包括最终源代码:

http://www.jdon.com/jdonframework/dci.html

6.5一个最大的特点是使用DCI Domain Events和无堵塞并发框架Disruptor这种三种从高到低的不同层次封装,从而达到能够在大多数项目中方便轻易使用无堵塞并发编程范式,这也是一种探索。
无堵塞的并发编程
[该贴被banq于2011-10-07 16:39修改过]

Jdon Framework 6.5.1发布,将原来的Disruptor 2.0升级为最新的2.8版本,每个消息topic对应一个固定的RingBuffer,重用性高,能够发挥RingBuffer为CPU高速缓存优化的特点。

Disruptor 2.8支持四种WaitStrategy策略:BLOCKING是不耗CPU,但是吞吐量不大,如果你的CPU负载高了,那么切换到SLEEPING,这是CPU耗费和吞吐量之间的平衡,空闲时CPU有一定负载,Linux下比Windows平台显著;YIELDING 和 BUSY_SPIN通过大量消耗CPU,获得最大吞吐量和最低1微妙延迟性。

Jdon Framework 6.5.1缺省采取BLOCKING。

使用Disruptor实现并发编程 PPT文档

支持Spring,可以将Jdon Framework 应用系统运行在Spring中:整合在Spring中

基于Jdon Framework 6.5.1的JiveJdon 4.6.1也发布,JiveJdon 4.6已经在jdon.com稳定运行三个月,7x24持续运行,没有死锁,没有内存泄漏。

下载地址:http://www.jdon.com/jdonframework/download.html