How would the thread pool help ? IMHO the threads should be per-region, not per-client - then the number of threads would be quite limited.<br><br>I would think in the http server the thread pool is used because HTTP is inherently a request-response-forget protocol. Whereas the client connections are long-lived, so if we have now one thread per client connection, I do not see how the thread pool would be useful...
<br><br>(indeed these are speculations without much looking at the code, the tide of the last week's burst of RL still there)<br><br>/d<br><br><div><span class="gmail_quote">On 9/23/07, <b class="gmail_sendername">Tleiades
</b> <<a href="mailto:tleiades@hotmail.com">tleiades@hotmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div bgcolor="#ffffff">
<div><font face="Arial" size="2">Hi</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">I have created a new page on the wiki, outlining
the threading strategy, or lack thereof.</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2"><a href="http://opensimulator.org/wiki/OpenSim:Threading_strategy" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://opensimulator.org/wiki/OpenSim:Threading_strategy
</a> </font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">I think we should streamline our use of threads. I
am especially concerned about the way threads are used in the ClienView, where a
thread is used per client. One thread per connection is <em>the</em> classical
way of handling several clients connecting to a single server, unfortuantely
this frequently leads to a scenario where hundreds, if not thousands of threads
execute in one process. I would suspect that the user, asset and grid servers
will have a large number of connections, consequently we need to think ahead,
and plan for good scalability in those server modules.</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">I would propose that we generally switch to a
strategy similar to the one used in BaseHttpServer, relying on the thread pool.
</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">/tleiades</font></div>
<div> </div>
<div><font face="Arial" size="2"></font> </div></div>
<br>_______________________________________________<br>Opensim-dev mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a><br>
<a onclick="return top.js.OpenExtLink(window,event,this)" href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br><br></blockquote></div><br>