467,135 Members | 1,199 Online
Bytes | Developer Community
Ask Question

Home New Posts Topics Members FAQ

Post your question to a community of 467,135 developers. It's quick & easy.

remoting client in IIS request server waiting permenantly when the network connection broken

Hi,

I am using .net remoting technology. I set up a .net remoting client and
server in IIS. When the client calls the server, the server will run a long
duration method (30-60seconds). I have a test on it that if the network
broken at the time the client have already send the remoting request and
waiting for the server, the client side will wait infinitely by default,
even if i already set the executionTimeout to 90seconds in machine.config
and iis connection timeout. The performance counter shows that the request
current in client side will hold, and the thread will hold. Using netstat to
check the client connection that the connection is established to the server
side.

If client and server in a very unstable network environment and request goes
high, this problem will make the IIS (asp.net) reach the connection limit. I
use a workaround method to set the timeout by:

System.Runtime.Remoting.Channels.ChannelServices.G etChannelSinkProperties(se
rviceObjectInstance)["timeout"] = 30000; //30s timeout

My questions:

1. In my real case, the probability of the network connection broken is very
rare. So, I want to know any possible error will make the same situation in
client side?

2. Any method to set the timeout for all remoting object instance rather
than calling the above method everytime?

Many thanks,
Dicky Cheng
Jul 21 '05 #1
  • viewed: 3530
Share:
2 Replies
More information:

my client side open a browser to browse a page in the client side (localhost
relative to the browser), there is a button that trigger remoting call from
client side to server side. If the connection broken when the client is
waiting the response from the remoting server, the browser will wait
infinitely. When the connection resume, the broswer still waiting, and i
click the button in the page again, it will make one more request and wait
inifinitely. I open a new browser in the client, and successfully get a
response from the server. I checked the netstat, notice that the client has
established connection in the server (even the connection broken between
them), this won't happen if i stop IIS service in server side (it will throw
underlying connection close).

So, I would like to know how remoting handle the mechanism in connection
between server and client?

Thanks,
Dicky Cheng
"Dicky Cheng" <xx*@xxx.com> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...
Hi,

I am using .net remoting technology. I set up a .net remoting client and
server in IIS. When the client calls the server, the server will run a long duration method (30-60seconds). I have a test on it that if the network
broken at the time the client have already send the remoting request and
waiting for the server, the client side will wait infinitely by default,
even if i already set the executionTimeout to 90seconds in machine.config
and iis connection timeout. The performance counter shows that the request
current in client side will hold, and the thread will hold. Using netstat to check the client connection that the connection is established to the server side.

If client and server in a very unstable network environment and request goes high, this problem will make the IIS (asp.net) reach the connection limit. I use a workaround method to set the timeout by:

System.Runtime.Remoting.Channels.ChannelServices.G etChannelSinkProperties(se rviceObjectInstance)["timeout"] = 30000; //30s timeout

My questions:

1. In my real case, the probability of the network connection broken is very rare. So, I want to know any possible error will make the same situation in client side?

2. Any method to set the timeout for all remoting object instance rather
than calling the above method everytime?

Many thanks,
Dicky Cheng

Jul 21 '05 #2
The executionTimeout entry in the machine.config only affects the server
side -- it's the amount of time the ASP.NET runtime will allow the server
request before terminating it forcibly. As for setting the timeout on the
client, you don't have to do this for every object -- just set a property on
the HttpChannel when you create it. How that's done depends on whether you
configure your channel programmatically or via a config file. Either way,
check out:

http://msdn.microsoft.com/library/en...figuration.asp

This file shows all the channel configuration properties and demonstrates
how to set them both within code and within a config file.

Ken

"Dicky Cheng" <xx*@xxx.com> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...
Hi,

I am using .net remoting technology. I set up a .net remoting client and
server in IIS. When the client calls the server, the server will run a long duration method (30-60seconds). I have a test on it that if the network
broken at the time the client have already send the remoting request and
waiting for the server, the client side will wait infinitely by default,
even if i already set the executionTimeout to 90seconds in machine.config
and iis connection timeout. The performance counter shows that the request
current in client side will hold, and the thread will hold. Using netstat to check the client connection that the connection is established to the server side.

If client and server in a very unstable network environment and request goes high, this problem will make the IIS (asp.net) reach the connection limit. I use a workaround method to set the timeout by:

System.Runtime.Remoting.Channels.ChannelServices.G etChannelSinkProperties(se rviceObjectInstance)["timeout"] = 30000; //30s timeout

My questions:

1. In my real case, the probability of the network connection broken is very rare. So, I want to know any possible error will make the same situation in client side?

2. Any method to set the timeout for all remoting object instance rather
than calling the above method everytime?

Many thanks,
Dicky Cheng

Jul 21 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

5 posts views Thread by Sunny | last post: by
reply views Thread by Mike Grishaber | last post: by
4 posts views Thread by Grant Schenck | last post: by
reply views Thread by =?Utf-8?B?Sm9obiBXLg==?= | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.