You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@tuscany.apache.org by "Dietrich, Björn" <B....@cenit.de> on 2010/02/19 09:12:27 UTC

Increase number of Worker Threads.

Hi,

I noticed that when sending a lot of requests to the internal jetty server that the workload is

distributed to 10 threads. From 11th request on the requests are queued. 

2010-02-18 14:25:00,342 INFO  [pool-1-thread-7] de.cenit.std.SleepService: Called de.cenit.std.SleepService
2010-02-18 14:25:00,342 INFO  [pool-1-thread-7] de.cenit.std.SleepService: Property from SleepService.composite: myValue
2010-02-18 14:25:00,342 INFO  [pool-1-thread-7] de.cenit.std.SleepService: Sleep Service Ausgabe1
2010-02-18 14:25:02,195 INFO  [pool-1-thread-4] de.cenit.std.SleepService: Called de.cenit.std.SleepService
2010-02-18 14:25:02,195 INFO  [pool-1-thread-4] de.cenit.std.SleepService: Property from SleepService.composite: myValue
2010-02-18 14:25:02,195 INFO  [pool-1-thread-4] de.cenit.std.SleepService: Sleep Service Ausgabe1 

I suppose this limitation is due to the creation of the TreadPoolWorkerManager

by the following statement:

jsr237WorkManager = new ThreadPoolWorkManager(10); 

This statement can be found in Tuscany 1.5  DefaultWorkScheduler.java line 65

and also in older Version of the source (eg. 1.0.1  Jsr237WorkScheduler.java Line 50  )

>From my current understanding Tuscnay uses a fixed thread pool, while jetty standalone 

dynamicly increases the number of threads (upper limit configurable by maxThreads property)

How can I increase the number of worker threads ?

Is there a configuration file or do I have to create a patch ? 

thanks for your fine work

Greetings

Björn

 

 

 

 



CENIT AG, Industriestrasse 52-54, 70565 Stuttgart, Tel.: +49 711 7825-30, Fax: +49 711 7825-4000, Internet: www.cenit.de
Geschaeftsstellen: Berlin, Duesseldorf, Frankfurt, Hamburg, Hannover, Muenchen, Oelsnitz, Saarbruecken
Vorstandsmitglieder: Kurt Bengel, Christian Pusch
Aufsichtsratsmitglieder: Andreas Schmidt (Vorsitzender des Aufsichtsrats), Hubert Leypoldt, Andreas Karrer
Bankverbindungen:
Deutsche Bank (BLZ 600 700 70) Kto. 1661 040 IBAN : DE85 6007 0070 0166 1040 00 SWIFT-CODE : DEUTDESS,
Commerzbank (BLZ 600 400 71) Kto. 532 015 500 IBAN : DE83 6004 0071 0532 0155 00 SWIFT-Code : COBADEFF600,
BW-Bank (BLZ 600 501 01) Kto. 2 403 313 IBAN : DE17 6005 0101 0002 4033 13 SWIFT-Code : SOLADEST
Registergericht: Amtsgericht Stuttgart
Handelsregister: HRB Nr. 19117
Umsatzsteuer: ID-Nr. DE 147 862 777

Re: Increase number of Worker Threads.

Posted by Raymond Feng <en...@gmail.com>.
Hi,

The 1.5.1 and 1.6 release should already fix the problem. Now we do:

jsr237WorkManager = new ThreadPoolWorkManager(0); 

It in turns calls:
    /**
     * Initializes the thread-pool.
     *
     * @param threadPoolSize Thread-pool size. If the size <1, then a cached pool is created
     */
    public ThreadPoolWorkManager(int threadPoolSize) {
        ThreadFactory factory = new ThreadFactory() {
            public Thread newThread(Runnable r) {
                Thread thread = new Thread(r);
                thread.setDaemon(true);
                return thread;
            }
        };
        if (threadPoolSize <= 1) {

            // Creates a new Executor, use a custom ThreadFactory that
            // creates daemon threads.
            executor = Executors.newCachedThreadPool(factory);
        } else {
            executor = Executors.newFixedThreadPool(threadPoolSize);
        }
    }

So we should get a cached thread pool. 

http://svn.apache.org/repos/asf/tuscany/sca-java-1.x/tags/1.5.1/modules/core/src/main/java/org/apache/tuscany/sca/core/work/DefaultWorkScheduler.java

Thanks,
Raymond


From: "Dietrich, Björn" 
Sent: Friday, February 19, 2010 12:12 AM
To: user@tuscany.apache.org 
Subject: Increase number of Worker Threads.


Hi,

I noticed that when sending a lot of requests to the internal jetty server that the workload is

distributed to 10 threads. From 11th request on the requests are queued. 

2010-02-18 14:25:00,342 INFO  [pool-1-thread-7] de.cenit.std.SleepService: Called de.cenit.std.SleepService
2010-02-18 14:25:00,342 INFO  [pool-1-thread-7] de.cenit.std.SleepService: Property from SleepService.composite: myValue
2010-02-18 14:25:00,342 INFO  [pool-1-thread-7] de.cenit.std.SleepService: Sleep Service Ausgabe1
2010-02-18 14:25:02,195 INFO  [pool-1-thread-4] de.cenit.std.SleepService: Called de.cenit.std.SleepService
2010-02-18 14:25:02,195 INFO  [pool-1-thread-4] de.cenit.std.SleepService: Property from SleepService.composite: myValue
2010-02-18 14:25:02,195 INFO  [pool-1-thread-4] de.cenit.std.SleepService: Sleep Service Ausgabe1 

I suppose this limitation is due to the creation of the TreadPoolWorkerManager

by the following statement:

jsr237WorkManager = new ThreadPoolWorkManager(10); 

This statement can be found in Tuscany 1.5  DefaultWorkScheduler.java line 65

and also in older Version of the source (eg. 1.0.1  Jsr237WorkScheduler.java Line 50  )

>From my current understanding Tuscnay uses a fixed thread pool, while jetty standalone 

dynamicly increases the number of threads (upper limit configurable by maxThreads property)

How can I increase the number of worker threads ?

Is there a configuration file or do I have to create a patch ? 

thanks for your fine work

Greetings

Björn












CENIT AG, Industriestrasse 52-54, 70565 Stuttgart, Tel.: +49 711 7825-30, Fax: +49 711 7825-4000, Internet: www.cenit.de
Geschaeftsstellen: Berlin, Duesseldorf, Frankfurt, Hamburg, Hannover, Muenchen, Oelsnitz, Saarbruecken
Vorstandsmitglieder: Kurt Bengel, Christian Pusch
Aufsichtsratsmitglieder: Andreas Schmidt (Vorsitzender des Aufsichtsrats), Hubert Leypoldt, Andreas Karrer
Bankverbindungen:
Deutsche Bank (BLZ 600 700 70) Kto. 1661 040 IBAN : DE85 6007 0070 0166 1040 00 SWIFT-CODE : DEUTDESS,
Commerzbank (BLZ 600 400 71) Kto. 532 015 500 IBAN : DE83 6004 0071 0532 0155 00 SWIFT-Code : COBADEFF600,
BW-Bank (BLZ 600 501 01) Kto. 2 403 313 IBAN : DE17 6005 0101 0002 4033 13 SWIFT-Code : SOLADEST
Registergericht: Amtsgericht Stuttgart
Handelsregister: HRB Nr. 19117
Umsatzsteuer: ID-Nr. DE 147 862 777