473,395 Members | 2,253 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

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
2 3896
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 thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: bettervssremoting | last post by:
To view the full article, please visit http://www.BetterVssRemoting.com Better VSS Remote Access Tool including SourceOffSite, SourceAnyWhere and VSS Remoting This article makes a detailed...
1
by: Ahmet AKGUN | last post by:
Hi All; I have one server to which clients are connected to via TcpChannel. I start server on one host and establish a client connection from another host via tcpchannel. On client, using...
5
by: Sunny | last post by:
Hi, I have to implement client/server application. The client have to instaniate an remoting object via http and pass some auth info. If the auth is OK, the client should invoke a method (or...
0
by: Mike Grishaber | last post by:
Hello All, I am using an IHttpAsyncHandler class to intercept HTTP Requests and forward them to a system which processes the Request and returns the Result. I use .NET Remoting to connect the...
0
by: Martijn Damen | last post by:
Hi, At the moment I am trying to develop an application that uses another app over .net remoting and having some problems with it (ok, that is ofcourse why I am here), hope somebody can shine a...
2
by: Dicky Cheng | last post by:
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...
4
by: Grant Schenck | last post by:
Hello, I'm just starting with .NET remoting. Here is what I'm not sure how to handle. I have a IPC Channel remoting server. It exports an object and I can call a method on that object just...
0
by: =?Utf-8?B?Sm9obiBXLg==?= | last post by:
A client application connects to a TCP-remoted object from a service on localhost for method invocations and events. It works as advertised. But... if the network cable (LAN) gets disconnected,...
3
by: ChristianProgrammer | last post by:
Its been a month and a half now. I have tried to get my WSSF web service to reference a class library that IS a Socket Client. The Socket Client in question runs fine when called by a testing exe....
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.