WebMethods 不向 IIS Web 服务调用发送 ACK/FINISH
我们已经在测试中重现了这个问题,所以我很高兴问这个问题 - 不是我理解它或任何东西。 ;-)
WebMethods 正在连接到 IIS Web 服务(我是 IIS 人员,而 WebMethods 人员没有为我提供答案。) 不过,IIS 在大多数调用中都会抛出 200 0 1236 错误。其原因是 Timer_MinFileBytesPerSec。 WebMethods 对 IIS 发送的结果感到满意,并且并不总是礼貌地关闭网络对话。除非我们在飞行中同时接到两个电话,否则这不是问题。如果 IIS 终止 MinBytes 的第一个会话,它将终止具有该 IP 地址的所有打开的会话,从而终止第二个会话。 WebMethods 因该错误而呕吐,我接到电话。
有没有办法强制 WebMethods 礼貌地结束网络对话?
会话如下:
会话失败:
WebMethods sends SOAP in 2 packets - SOAP + HTTP continuation
IIS sends ACK
15 second processing delay
IIS sends SOAP reply with ACK/PUSH/FINISH flags
WebMethods sends ACK flag
15 second delay
IIS sends Reset flag and conversation dies
会话成功:
WebMethods sends SOAP in 2 packets - SOAP + HTTP continuation
IIS sends ACK flag
15 second processing delay
IIS sends SOAP reply with ACK/PUSH/FINISH flags
WebMethods sends ACK flag
6 second delay
WebMethods sends ACK/FINISH flag
IIS sends ACK flag
We all go home happy
如果我在 IIS 上扩展 ConnectionWaitTimeout 和 HeaderWaitTimeout 并收缩 MinFileBytesPerSec 设置,我可以让 IIS 无限期地等待 WebMethods 礼貌地发送 ACK/FINISH,但它永远不会到来。
有什么想法吗?
We've reproduced this one in Test, so I feel good about asking this question - not that I understand it or anything. ;-)
WebMethods is connecting to an IIS Web Service (I'm the IIS guy, and the WebMethods guy has no answer for me.) IIS is throwing 200 0 1236 errors on most of the calls, though. The cause of that is Timer_MinFileBytesPerSec. WebMethods is happy with the result IIS sends, and doesn't always close the network conversation politely. This is not a problem until we get two calls in flight at the same time. If IIS kills the first convo for MinBytes it will kill all open convos with that IP address, thereby killing the second conversation in passing. WebMethods pukes on that error, and I get called.
Is there any way to force WebMethods to end the network conversation politely?
The convos go like this:
Failed convo:
WebMethods sends SOAP in 2 packets - SOAP + HTTP continuation
IIS sends ACK
15 second processing delay
IIS sends SOAP reply with ACK/PUSH/FINISH flags
WebMethods sends ACK flag
15 second delay
IIS sends Reset flag and conversation dies
Successful convo:
WebMethods sends SOAP in 2 packets - SOAP + HTTP continuation
IIS sends ACK flag
15 second processing delay
IIS sends SOAP reply with ACK/PUSH/FINISH flags
WebMethods sends ACK flag
6 second delay
WebMethods sends ACK/FINISH flag
IIS sends ACK flag
We all go home happy
If I extend the ConnectionWaitTimeout and HeaderWaitTimeout on IIS and contract the MinFileBytesPerSec setting, I can make IIS wait indefinitely for WebMethods to politely send the ACK/FINISH, but it never comes.
Any thoughts?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是 WebMethods 6.5 中的一个缺陷。当从 WebMethods 8 运行相同的代码时,问题就消失了。
This is a flaw in WebMethods 6.5. When the same code was run from WebMethods 8, the problem evaporated.