Aspect oriented software implemented node level fault tolerance

Aspect oriented software implemented node level fault tolerance
复制标题

面向方面的软件实现节点级容错

DOI:
--
复制
发表时间:
2005
期刊:
International Conference on Software Engineering
影响因子:
--
通讯作者:
Peter Öhman
Peter Öhman
中科院分区:
--
文献类型:
--
作者:
Ruben Alexandersson;Peter Öhman

文献摘要

被引文献

相似文献

切入点TimeRedundantMethod ();对象around(): TimeRedundantMethod(){RecoveryCache.establish();对象r1 = proceed();RecoveryCache.restore ();对象r2 = proceed();如果(r1。= (r2))抛出新的TransientFaultException;RecoveryCache.discard ();返回r1;图4:时间冗余执行实现图4代码实现了一个通用的时间冗余方面,可以应用于任何方法。该实现利用恢复缓存来设置检查点,并在每次运行前返回到以前的状态。将这方面应用于目标程序非常简单,因为这只是声明应该以时间冗余的方式执行哪个方法的问题。这是通过实例化抽象切入点完成的,如图5所示。属性扩展TimeRedundantExecution{切入点TimeRedundantMethod():
pointcut TimeRedundantMethod(); Object around() : TimeRedundantMethod(){ RecoveryCache.establish(); Object r1 = proceed(); RecoveryCache.restore(); Object r2 = proceed(); if(!r1.equals(r2)) throw new TransientFaultException; RecoveryCache.discard(); return r1; } } Figure 4: Time-redundant execution implementation The figure 4 code implements a general Time-redundancy aspect that can be applied to any method. The implementation makes use of the recovery cache to set up a checkpoint and return to the previous state before each run. It is very simple to apply this aspect to a target program since it is only a matter of declaring which method(s) should be executed in a time-redundant manner. This is done by instantiating the abstract pointcut as shown in figure 5. public privileged aspect aTRE extends TimeRedundantExecution{ pointcut TimeRedundantMethod():