Jetty has a special api to allow exactly this kind of request efficiently.
The thread is not kept assignd to the "sleeping" connection, but is re-used.

lg Clemens

2008/10/6 Kees Jan Koster <[EMAIL PROTECTED]>:
> Dear Uprooter,
>
>> I'm looking for a server that has to hold many (web services) remote
>> clients
>> for controlling them.
>> I want to do things like sending power off command to a bunch of machines
>> remotely.
>
> Building a botnet? :-)
>
>> The clients are usually windows machines behind firewalls  NAT or web
>> proxies that only allow HTTP (this is why I thought of webservices)
>>
>> The regular request-response fashion that servlet follows  is not suitable
>> here since the initiator of the operation is the server.
>> What can I do in order to solve this and still use web services?
>
> If you have the resources, you can just block in the servlet on your server.
> It's pretty expensive since Tomcat uses a thread per request I believe. Java
> threads are expensive (256kB each?), so that adds up quickly. You could
> spend some time tuning your thread stacks, though. Depending on your actual
> number of clients, you should be able to get this to work with a few GB of
> RAM.
>
> But then, 20K client polling once an hour might be cheaper. You may want to
> find a way to stagger the requests though.
>
> --
> Kees Jan
>
> http://java-monitor.com/forum/
> [EMAIL PROTECTED]
> 06-51838192
>
> The secret of success lies in the stability of the goal. -- Benjamin
> Disraeli
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to