是否应在Apigee Edge Java Callout中的所有引用类中使用IOIntensive Annotation,或者仅在实现com.apigee.flow.execution.spi.Execution的类中使用
For Instance -
@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属性吗?
答案 0 :(得分:1)
您应该只注释JavaCallout策略引用的类。没有其他类应该注释,否则你会得到Api代理错误。
@IOIntensive
public class Apples implements Execution {
....
}
答案 1 :(得分:0)
关于@IOIntensive的使用: 我认为仅注释需要类似异步行为的类才能注释为“IOINTENSIVE”是有意义的。因为内部发生的是一个单独的轻量级线程被分配来做到这一点,提高了应用程序的整体性能(apiproxy)。
正如abhishek所说,你应该只注释JavaCallout政策所引用的类。没有其他类应该注释,否则你会得到Api代理错误。