当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

防止RemoteObject批处理AMF消息

发表于: 2013-01-14   作者:darrenzhu   来源:转载   浏览:
摘要: 问题描述: 如果你在短时内调用同一个java对象上的两个方法,RemoteObject默认会把两个消息作为一个请求提交到java端,假设方法为method1和method2,如果method1做的返回很快,但是method2需要花费一定时间,那么由于被批处理了,java端只有一个线程在处理这两个方法,当method2没完成之前,method1的结果不会返回,这样就出现了一个应该很快有结果的方法在
问题描述:
如果你在短时内调用同一个java对象上的两个方法,RemoteObject默认会把两个消息作为一个请求提交到java端,假设方法为method1和method2,如果method1做的返回很快,但是method2需要花费一定时间,那么由于被批处理了,java端只有一个线程在处理这两个方法,当method2没完成之前,method1的结果不会返回,这样就出现了一个应该很快有结果的方法在等待一个很耗时间的方法,显然不是我们所需要的。

相关内容可以参考RemoteObject上的concurrency属性,
也可以参考文章:http://stackoverflow.com/questions/2037613/how-do-i-prevent-remoteobject-from-batching-amf-messages-together

暂时解决方法,把两个方法稍微隔开,如果设个定时器,method1调用后等候100毫秒左右,再发生method2的调用,这样服务器端会区分开,比如用两个线程,那么method1就不用等后method2了。

防止RemoteObject批处理AMF消息

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号