N
Navin Mishra
Hi,
I've an ASP.NET web service which distributes events to clients via TCP.
Environment is IIS6 on Windows 2003 server with .NET framework 1.1 SP1. A
client registers with the web service passing its TCP port to send events to
and web service opens a TCP blocking socket to the client. Whenever the web
service needs to send an event to the client, it spawns a dynamic
non-persistent thread to dispatch event to the client over the connected
blocking socket.
Does THAT thread count in the configured thread limit of ASP.NET worker
process worker and I/O threads ? If not, can an ASP.NET thread pool
thread(I/O or worker) be used instead to dispatch event to the client to
avoid overhead of creating and destroying TCP event dispatching threads(I
wanted to dispatch event to the client as soon as it is received and so I
spawn a new thread everytime) ? If yes, would it be required to use
asynchronous sockets ? Is a web service needs to send TCP data to an
endpoint, is it affected by maxConnection parameter ?
Is it more optimal if, instead of web service opening TCP socket to client,
the client opens a TCP socket to the web service to get events via TCP ?
Then that means that web service needs to listen on a TCP port too on
another thread ?
Any advice and/or recommendations appreciated!
Thanks in advance and regards
Navin
I've an ASP.NET web service which distributes events to clients via TCP.
Environment is IIS6 on Windows 2003 server with .NET framework 1.1 SP1. A
client registers with the web service passing its TCP port to send events to
and web service opens a TCP blocking socket to the client. Whenever the web
service needs to send an event to the client, it spawns a dynamic
non-persistent thread to dispatch event to the client over the connected
blocking socket.
Does THAT thread count in the configured thread limit of ASP.NET worker
process worker and I/O threads ? If not, can an ASP.NET thread pool
thread(I/O or worker) be used instead to dispatch event to the client to
avoid overhead of creating and destroying TCP event dispatching threads(I
wanted to dispatch event to the client as soon as it is received and so I
spawn a new thread everytime) ? If yes, would it be required to use
asynchronous sockets ? Is a web service needs to send TCP data to an
endpoint, is it affected by maxConnection parameter ?
Is it more optimal if, instead of web service opening TCP socket to client,
the client opens a TCP socket to the web service to get events via TCP ?
Then that means that web service needs to listen on a TCP port too on
another thread ?
Any advice and/or recommendations appreciated!
Thanks in advance and regards
Navin