首页 > 代码库 > 停止复制代理后AWT缓存组的行为

停止复制代理后AWT缓存组的行为

AWT缓存组中虽然大多数时候数据是从TimesTen到Oracle,但也存在数据从Oracle到TimesTen的情形。数据从TimesTen下沉到Oracle依靠复制代理,数据从Oracle到TimesTen的刷新依赖缓存代理。由于AWT缓存组不能定义autorefresh,因此缓存代理只用于手工Load或Refresh操作。

如果停止复制代理,然后在两个数据库中均插入数据,会出现什么情况?为此做了以下的实验:

技术分享

简单来说,如果复制代理失效,在TimesTen中的数据将暂时无法下沉到Oracle,但这些数据不会丢失,后续复制代理启动后会自动同步到Oracle。
由于缓存代理正常,因此refresh和load操作不受影响。

在实验中有一处需要关注,即第7步refresh将TimesTen中的<2,2>刷没了,通过第8步骤才将其重新刷新到TimesTen。

<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘
    ‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

    停止复制代理后AWT缓存组的行为