Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
More on worker process
Message
From
15/04/2011 17:59:44
 
 
To
15/04/2011 16:08:33
General information
Forum:
ASP.NET
Category:
Other
Environment versions
Environment:
VB 9.0
OS:
Windows 7
Network:
Windows 2003 Server
Database:
MS SQL Server
Application:
Web
Miscellaneous
Thread ID:
01507537
Message ID:
01507546
Views:
40
>>I don't know about the simultaneous hits question. But, if the underlying problem is caused by an object or item not existing for a fraction of a second, you may be able to work around that.
>>
>>At the moment, you have a Data Dictionary object (DD). You could have your rebuild process create a new data dictionary (DDNew). Only when the rebuild is complete, would you set the DD pointer to DDNew, and release the original DD. In effect you'd be setting up a temporary pool of 2 DDs.
>>
>>BTW your thread title sounds like "Moron worker process" - in English you always have to be careful with the "more on" phrase :)
>
>I have found at this page a note that says that each worker process is multi threaded. So, that would explain the situation I have.
>
>http://www.google.com/#hl=en&sugexp=ldymls&xhr=t&q=iis+worker+process+simultaneous&cp=31&qe=aWlzIHdvcmtlciBwcm9jZXNzIHNpbXVsdGFuZW91cw&qesig=iLsFzcJ_MecBP-PhUtpPyw&pkc=AFgZ2tlVP28RDbOEKtCKvZ4VbPwJZjYjhfzeKhL-0_v5Oo81t8EXisfn5zfDBBEZ_i8fM6VGpo3qt0xmmLw1EH7P3XdERPHGLw&pf=p&sclient=psy&source=hp&aq=f&aqi=&aql=&oq=iis+worker+process+simultaneous&pbx=1&bav=on.2,or.r_gc.r_pw.&fp=1219d79d7d7a617
>
>It is written:
>
>"Remember, the worker process isn't limited to a single task. Both the ASP.NET worker process and the IIS worker process run multiple threads at the same time so that they can server simultaneous requests from different users."
>
>It is not a question of finding how to adjust the architecture. It is just to know the reason for the situation and then I would know where to adjust. I just wanted to be sure that I really needed to do it before starting to change a few things here and there.
>
>Based on that reference, it does seem in fact that the same worker process can handle simultaneous hits. Thus, the situation I have is that, even if I have a locking mechanism at the high level of process to reload the data dictionary, one hit for the same worker process might already be passed that marker. So, while the data dictionary is being reloaded, the other hit in progress might fails on a data request.
>
>Thanks for the reference on "More on". I will take note of that.

I googled [iis7 worker process threads multiple hits]. There is some interesting information at:

http://stackoverflow.com/questions/2151251/asp-net-web-garden-how-many-worker-processes-do-i-need

http://forums.asp.net/t/1447626.aspx

Based on those, it looks like you have a couple of choices:

- keep using 4 worker processes, and limit each one to a single thread. Then you will not encounter threading issues

- modify your worker processes to be thread-safe. You could then specify how many threads each should be allowed to run. Maybe you could switch to 2 worker processes (for redundancy), each with a reasonable thread count.

Looking at those posts, I'm not sure there would be any performance improvement in running 4 worker processes with 1 thread each, vs. running 1 WP with 4 threads.
Regards. Al

"Violence is the last refuge of the incompetent." -- Isaac Asimov
"Never let your sense of morals prevent you from doing what is right." -- Isaac Asimov

Neither a despot, nor a doormat, be

Every app wants to be a database app when it grows up
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform