Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用aem 6.1中的DAM更新资产工作流删除资产?_Aem_Dam - Fatal编程技术网

如何使用aem 6.1中的DAM更新资产工作流删除资产?

如何使用aem 6.1中的DAM更新资产工作流删除资产?,aem,dam,Aem,Dam,我应该能够将资产的格式副本从worker实例复制到master实例,然后删除worker实例中的资产 使用DAM更新资产卸载工作流在我看来,在worker实例上更新更新资产工作流不是一个好的做法- 整个卸载基于吊索发现和事件机制。这需要将卸载的资产发送回(读取反向复制)Leader实例 在更新资产工作流中添加步骤可能会导致资产反向复制问题 您必须构建独立于卸载过程的东西来实现此删除。有多种方法可以做到这一点- 一种可能的方法是: 使用基于JMS的实现来监视反向复制 如果反向复制成功,请删除资产

我应该能够将资产的格式副本从worker实例复制到master实例,然后删除worker实例中的资产
使用DAM更新资产卸载工作流

在我看来,在worker实例上更新更新资产工作流不是一个好的做法-

  • 整个卸载基于吊索发现和事件机制。这需要将卸载的资产发送回(读取反向复制)Leader实例
  • 在更新资产工作流中添加步骤可能会导致资产反向复制问题
  • 您必须构建独立于卸载过程的东西来实现此删除。有多种方法可以做到这一点-

    一种可能的方法是:

    • 使用基于JMS的实现来监视反向复制
    • 如果反向复制成功,请删除资产或将资产标记为删除(强烈建议)
    • 如果遵循将资产标记为删除的方法,请将清理任务设置为仅运行辅助实例(计划到方便的时间)。此清理任务标识标记为删除的资产并对其进行处理
    IMHO标记资产以进行删除是一种更好的方法,因为它的性能和效率更高。所有资产在非高峰时间一次处理

    还有其他方法可以实现这一点,但需要编写大量自定义代码

    更新-

    利用反向复制-

    您需要深入了解反向复制工作的细节

    • 要反向复制的内容被推送到发件箱
    • 如果查看本地实例上的
      /etc/replication/agents.publish/outbox/jcr:content
      ,请查找属性
      transportUri
      ,默认情况下-
      repo://var/replication/outbox
      即,要反向复制的内容被推送到“/var/replication/outbox”
    • 现在看看
      /libs/cq/replication/components/revagent/revagent.jsp
      ,这是在接收实例上工作的逻辑
    浏览以上内容将使您更深入地了解反向复制的工作原理

    现在您有两个选项来实现您想要的功能-

  • 要检查复制状态,请在执行
    /libs/cq/replication/components/revagent/revagent.jsp
    中的代码时点击复制队列。这是在内容被反向复制的Author实例上执行的代码,在您的例子中是它的Leader实例。您必须围绕此代码工作,才能使其在工作实例上工作。更具体地说,您的代码将更新行
    Agent=agentMgr.getAgents().get(id)其中id是发件箱代理id
  • 让事件侦听器监视发件箱。检查用于复制的负载,并将其用于您的功能

  • 我提到的是未涵盖故障切换/恢复用例的粗糙方法,即,如果复制队列因任何原因被阻止,并且映像未被推回leader,您将如何处理删除操作。

    不清楚您试图实现什么。默认情况下,卸载工作流将委托给从/卸载实例的工作,处理后的输出将反映回leader实例。您只是想清理卸载/从实例吗?是的,我想删除从实例中的资产。我想我可以通过将“删除dam资产”组件添加到从实例中的dam更新资产工作流中来实现这一点。但它不起作用。您以前做过吗?如果我使用第二个解决方案来做,我如何检查反向复制是否成功?