2

应该在 Apigee Edge Java 标注中的所有引用类中使用 IOIntensive 注解,还是仅在实现 com.apigee.flow.execution.spi.Execution 的类中使用 IOIntensive 注解

例如 -

@IOIntensive
public class Apples implements Execution {

public ExecutionResult execute(MessageContext messageContext, ExecutionContext executionContext) {

  Fruit.giveMeWorms();
  return ExecutionResult.SUCCESS;
}

public class Fruit {

  public static final giveMeWorms(){
    //do something io intensive
  }
}

在这种情况下,Fruit 类是否也应该使用 IOIntensive 属性?

4

2 回答 2

1

您应该只注释 JavaCallout 策略所引用的类。不应注释其他类,否则您将收到 Api 代理错误。

@IOIntensive
public class Apples implements Execution {
....
}
于 2014-01-28T08:54:55.727 回答
0

关于@IOIntensive 的使用:我认为只注释需要类似于异步行为的类被注释为“IOINTENSIVE”是有意义的。因为内部发生的是分配一个单独的轻量级线程来执行此操作,从而提高应用程序的整体性能(apiproxy)。

正如 abhishek 所说,您应该只注释 JavaCallout 策略所引用的类。不应注释其他类,否则您将收到 Api 代理错误。

于 2014-01-29T07:01:26.650 回答