Coherence Extend Thread count is decimal number monitored from JMX

Hi,
We set a thread count in the proxy server configuration as 10 and we have two proxies.
In the JMX report we getting following information,
Connections=3, Cpu=72964ms (0.0%), Messages=63354, Throughput=868.2912msg/sec, AverageActiveThreadCount=4.710551E-4, Tasks=14670, AverageTaskDuration=4.410225ms, MaximumBacklog=6, BytesReceived=46.8MB, BytesSent=88.9MB, ThroughputInbound=0bps, ThroughputOutbound=0bps
Connections=8, Cpu=16164ms (0.0%), Messages=112401, Throughput=6953.786msg/sec, AverageActiveThreadCount=0.0049326043, Tasks=34702, AverageTaskDuration=10.976889ms, MaximumBacklog=3, BytesReceived=13.2MB, BytesSent=6.62GB, ThroughputInbound=0bps, ThroughputOutbound=718Kbps
AverageActiveThreadCount=0.0049326043
can someone explain why AverageActiveThreadCount is in decimal?
Thanks
Prab

Yes, because each "sample" changes the average, such that after 10 samples, if 5 times there were 2 threads busy and 5 times there were 3 threads busy, the average would be 2.5.
Peace,
Cameron Purdy | Oracle Coherence
http://coherence.oracle.com/

Similar Messages

  • Thread-count

    I understand that the thread-count determines the number of service threads for a particular service. So, if the thread-count for the ordersCache is 10, then a max of 10 OrderProcessor agents would be able to process orders at the same time.
    Questions:
    1. What happens if an 11th agent is invoked? Does it wait in a queue, waiting for a service thread to be freed? If so, how long does it wait?
    2. For pure reads, does the thread-count matter? For instance, if I have a "public static NamedCache testCache" shared across 15 threads that are reading from the cache and if the thread-count defined is 10, then does that mean that only 10 threads can do "cache.get" at the same time? If so, what happens when the 11th thread calls "cache.get"? Does it wait?
    Thanks
    Ghanshyam

    Hi Ghanshyam,
    I understand that the thread-count determines the
    number of service threads for a particular service.
    So, if the thread-count for the ordersCache is 10,
    then a max of 10 OrderProcessor agents would be able
    to process orders at the same time.Yes.
    Questions:
    1. What happens if an 11th agent is invoked? Does it
    wait in a queue, waiting for a service thread to be
    freed? If so, how long does it wait?Yes, it waits until a thread is available.
    Starting in release 3.3, it will be possible to specify a time-out and/or a priority for your operations.
    2. For pure reads, does the thread-count matter? For
    instance, if I have a "public static NamedCache
    testCache" shared across 15 threads that are reading
    from the cache and if the thread-count defined is 10,
    then does that mean that only 10 threads can do
    "cache.get" at the same time? If so, what happens
    when the 11th thread calls "cache.get"? Does it
    wait?Yes, it waits. An in-memory read is typically so quick that it would not be an issue, but it could be if the gets were going to a CacheLoader and the database was slow or blocked. In the upcoming 3.3 release, it will be possible to specify time-outs for those operations.
    Peace,
    Cameron Purdy
    Tangosol Coherence: The Java Data Grid

  • Threads minimum vs Threads Count

    Hi,
    What's the difference in teh execute queue between threads minimum and
    threads count? Any comments will help!
    Docs say:
    Thread Count: Specify the number of threads assigned to this queue. If
    you do not need to use more than 15 threads (the default) for your work,
    do not change the value of this attribute.
    Thread Minimum:
    Specify the minimum number of threads that WebLogic Server should
    maintain in this execute queue to prevent unnecessary overflow
    conditions. By default, the Threads Minimum is set to 5
    I don't undersatnd what "maintain in this execute queue" means?
    Obviuosly, there will be 15 threads assigned to the execute queue.
    When the "queue lengthh threshold" is reached, "Thread Increase" will be
    added to number of threads, until a maximum of "Thread Maximum".
    I don't know how "Threads Minimum" plays a role.
    Thanks!
    Q

    Don't run into troubles, and don't misuse threads, the only thing that decides when your thread will execute is the Thread-scheduling system (which is part of the Java system) not you. So, you never must call run() to execute your thread, instead you always must use start(). The call of start() actually makes the scheduling-system to pay attention to your thread, and the calling of start() more than once will not have effect.

  • Comma or point in decimal number

    Hi,
    I wonder how to handle decimal number input from jsp page with comma or point. Is there a way to take care of this automatic so a comma get parsed to a point or vice versa.
    Thanks in advance.

    I don't know if it will be a comma or a dot that is inputed. My keyboard uses a comma on the numeric pad but if i change it to a US keyboard it will use dot instead so I can't tell what a user will input. And if I understand everything when java calculates a double it has to be with a dot, or am I completly wrong.
    So with this in mind i decided to replace all dots with a comma and then parse it to a double with NumberFormat and do my calculation and then format it with NumberFormat again. This works fine and gives me a nice output if no one tries to input more than one point or comma.
    I can't think of another way to do it so if this is completly wrong so please point me in the right direction.

  • Thread count higher than max worker threads... Large number of suspended worker threads

    I have a SQL 2012 SP2 server that is getting High Thread count alerts in SCOM.  looking into the issue I found some interesting things that I am now at a loss for.  I have been searching around for a few hours now and havent found much other than
    making it more confusing.  I found this MSDN blog:
    Are my actual worker threads exceeding the sp_configure 'max worker threads' value?
    Running through that I found some interesting things.
    -Max worker threads is set to default for x64 of 512 threads
    running a thread count query found 547 current worker threads:
    SELECT
    SUM(current_workers_count) as [Current worker thread] FROM sys.dm_os_schedulers
    Taking it a step further found that there was 523 worker threads in a suspended state with a last_wait_type of MISCELLANEOUS:
    select is_preemptive,state,last_wait_type,count(*) as NumWorkers from sys.dm_os_workers
    Group by state,last_wait_type,is_preemptive
    order by count(*) desc
    is_preemptive    state    last_wait_type    NumWorkers
    0    SUSPENDED    MISCELLANEOUS    523
    This is not yet a production server, no one is connecting to the database and the front end software application is not being used on this server yet.  Essentially this is just an idle database server so I thought it might be a fluke, so I restarted
    the sql services and the thread counts cleared.  I left it alone and overnight the high thread count alert popped back up.  I looked at it again this morning and the exact same thing happend.  Same number of suspended workers etc and total worker
    threads of 523 and 547 respectively.
    Other than the one article I have found above I have not been able to find anything to help explain this or what the heck suspended miscellaneous worker threads are.  Any help would be appreciated...Thanks!

    Hello,
    Please run the following query. The text column should tell us what is running.
    SELECT
     task.task_address,
     task.parent_task_address,
     task.task_state,
     REQ.request_id,
     REQ.database_id,
     REQ.session_id,
     REQ.start_time,
     REQ.command,
     REQ.connection_id,
     REQ.task_address,
     QUERY.text
    FROM
    SYS.dm_exec_requests
    req
    INNER
    JOIN sys.dm_os_tasks
    task on
    req.task_address
    = task.task_address
    or req.task_address
    = task.parent_task_address
    Cross
    apply sys.dm_exec_sql_text
    (req.sql_handle)
    as query
    WHERE
    req.last_wait_type
    = 'MISCELLANEOUS'
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • How to ensure a Coherence Extend TCP service

    Hi,
    We have defined an Extend TCP service within our <caching-schemes> element as follows:
    <proxy-scheme>
    <service-name>ExtendTcpProxyService</service-name>
    <thread-count>5</thread-count>
    <acceptor-config>
    <tcp-acceptor>
    <local-address>
    <address>localhost</address>
    <port system-property="tangosol.coherence.tcpproxy.port">6090</port>
    <reusable>true</reusable>
    </local-address>
    <keep-alive-enabled>true</keep-alive-enabled>
    <tcp-delay-enabled>true</tcp-delay-enabled>
    </tcp-acceptor>
    </acceptor-config>
    <autostart>true</autostart>
    </proxy-scheme>
    However, we are not using com.tangosol.net.DefaultCacheServer as the entry point for our application and would prefer to continue to use our own main() method, ensuring caches as required.
    Given this, I understand that the autostart element has no effect. Clients are unable to connect and no TCP listener appears to have been started.
    Can you give a demonstration of how to call ensureService(.., ...) to start the proxy service? Is there any reason that you would advise us against this, e.g. instead starting DefaultCacheServer inside a separate process?
    Many thanks,
    James

    Hi James,
    In your main you can invoke DefaultCacheServer.startDaemon() method.
    Regards,
    Dimitri

  • What is the difference between partition-count and the number of caches?

    What is the difference between partition-count and the number of caches in Coherence? Are they same?

    Those are totally orthogonal concepts.
    For more, look at this thread where I answered your other related questions and explain this, too:
    Where can I find the accurate definitions of these terms?
    Best regards,
    Robert

  • Threads Count and Backlog

    Hello everyone,
    1. How many processors vs How many thread counts? Is there any calculations?
    Let say the OS platform both for Windows NT, Sun Solaris as well as Linux?
    2. What is the trade-offs if I need to increase server backlog count?
    Thanks,
    Neo Gigs
    "Follow the white rabbit..."

    Neo:
    1. How many processors vs How many thread counts? Is there any
    calculations? Let say the OS platform both for Windows NT, Sun
    Solaris as well as Linux?On Windows NT, figure about 15-17 per CPU (plus however many WebLogic
    "steals" by default, which differs from version to version and with various
    options). On Solaris, that number is around 25-30.
    To get the absolute best level: Load test. Try a bigger number. Repeat. If
    it got better throughput, then try again. Otherwise, try a smaller number.
    Repeat.
    2. What is the trade-offs if I need to increase server backlog count?Do you mean "accept backlog"? That is for accepting HTTP connections by the
    native TCP/IP handlers. Generally, if you need to futz with that, then
    you're systems are pretty heavily loaded or seeing some big peaks. I think
    it defaults to 64 and you won't see any connections denied except during a
    long GC (so avoid huge heaps ;-)
    Peace,
    Cameron Purdy
    Tangosol, Inc.
    http://www.tangosol.com/coherence.jsp
    Tangosol Coherence: Clustered Replicated Cache for Weblogic
    "Neo Gigs" <[email protected]> wrote in message
    news:[email protected]..
    >

  • Thread Count Queue Length in Negative and Too many standby Thread

    We are using Weblogic server 9.2.2 with 1 admin server and 4 managed server . Currently in one of the servers I could observe that there are around 77 standby threads.
    Home > Summary of Servers > server1 > Monitoring > Threads > Self-Tuning Thread Pool
    I could see that the "queue length" is negative (-138) and self tuning standby thread count is 77. Large number of threads STANDBY thread persists during the busy time of the business hours where as other servers are fully utilized.
    Is it normal to have negative queue length and so many STANDBY threads? As for JMS queue negative oracle had already acknowledged that it is a bug. Thanks.
    Edited by: 855849 on May 1, 2011 7:19 AM
    Edited by: SilverHawk on May 12, 2011 8:12 AM

    Yesterday an Oracle Consultant acknowlegded that it is a bug. There was a patch issued for Negative count in the JMS queue count and now this. Thanks for the reply by the way.

  • Consumers count = thread count ?

              Hello,
              I've implemented on a wl cluster (10 6.1sp4 instances, patched with CR091195)
              the approximated distributed destination pattern.
              In my case the destination is a queue.
              Every wl instance has thread count = 100.
              I have 1 mdb, non transactional, and I haven't configured the max-beans-in-free-pool.
              It happens, when I deploy the MDB, targetting it to the cluster, that I can see
              on every wl instance (I have a monitoring program):
              JMSRuntime.connectionsCurrentCount = 1
              JMSConnectionRuntime.sessionsCurrentCount = 100 (I have only a "connection4116")
              JMSDestinationRuntime.consumersCurrentCount = 100 (I have only 1 queue)
              Why do I have all of these active consumers/sessions ?
              (and I haven't yet run my jms client)
              Thanks in advance
              Best Regards
              Mark
              

              Hi Mark,
              Before 6.1SP5, each MDB pool initializes
              Math.min(default-execute-thread-pool-size,
              max-beans-in-free-pool)
              consumers and sessions.
              For 6.1SP5 and later, each MDB pool initializes
              Math.min(default-execute-thread-pool-size/2 + 1,
              max-beans-in-free-pool)
              consumers and sessions.
              WL 7.0SP? (SP3 maybe?), and 8.1
              allow MDBs to use the "dispatch-policy" descriptor field
              and so assign themselves to a different
              thread-pool. In which case initialized max concurrent
              instances becomes:
              Math.min(custom-thread-pool-size,
              max-beans-in-free-pool)
              I think that the max-beans-in-free-pool default is
              some very high number. (At one point it was 1500).
              The consumer instances will not necessarily all use
              a thread at the same time, as they do not use
              up a thread when they are not operating on a
              message. In essence, thread usage depends on how
              slow the receivers are, how fast the producers are, and
              what other resources are also using
              the thread pool.
              I recommend tuning max-beans-in-free-pool so that total
              instance count on a server is somewhat less than
              the the thread count. This helps prevent dead-locks
              where all threads are running app code, and none
              are left to do other work.
              In case you are unaware, I also recommend
              using less than 100 threads unless the the
              app typically blocks a thread for long periods of time.
              The reason is that lots of threads may negatively
              impact performance, the operating system ends up
              burning CPU switching itself between threads
              rather than doing actual work.
              Each MDB deployment uses a single connection.
              Hope this helps,
              Tom, BEA
              P.S. The above information will be in the next
              iteration of the JMS Performance Guide white-paper,
              which I've currently started working on again.
              "Mark Cordobal" <[email protected]> wrote:
              >
              >Hello,
              >
              >I've implemented on a wl cluster (10 6.1sp4 instances, patched with CR091195)
              >the approximated distributed destination pattern.
              >In my case the destination is a queue.
              >
              >Every wl instance has thread count = 100.
              >
              >I have 1 mdb, non transactional, and I haven't configured the max-beans-in-free-pool.
              >
              >It happens, when I deploy the MDB, targetting it to the cluster, that
              >I can see
              >on every wl instance (I have a monitoring program):
              >
              >JMSRuntime.connectionsCurrentCount = 1
              >JMSConnectionRuntime.sessionsCurrentCount = 100 (I have only a "connection4116")
              >JMSDestinationRuntime.consumersCurrentCount = 100 (I have only 1 queue)
              >
              >Why do I have all of these active consumers/sessions ?
              >(and I haven't yet run my jms client)
              >
              >
              >Thanks in advance
              >
              >Best Regards
              >
              >
              >Mark
              

  • High thread count on store.exe

    I understand that the mdb store process utilizes as much memory as is available.  My question is regarding the thread count on the process.  One of the three mailbox servers tends to have a higher thread count than the other two.  It
    usually ranges from 150 to 200 (while the other two are usually 130 to 150) but today it is a little over 300.  The rpc thread count on all the mailbox servers stays pretty low (60 or under) and the rpc thread count on the CAS servers usually
    hang out around 55-65, so that's all good.  All three mailbox servers also use VERY close to the same amount of memory all the time, so that doesn't seem to be making a difference.  I am just trying to determine why the thread count is noticably
    higher.  This server and one of other mailbox servers replicate the public folder database, and I can understand why that would account for some additional activity, but you would think the thread count would be higher on the other server with the public
    folder database as well, but it stays pretty low.  Hardware-wise these servers are all identical.  So is there something I can monitor in perf mon for instance?  I don't want to use experfwiz because that monitors everything under the sun and
    I need it a bit more centralized.  I have googled all over the place and the only thing I can find is that with newer versions of exchange this thread count ranges from 200-300 on heavy usage, and exch07 can handle up to 500 threads, so I can't even find
    which specific things to monitor that directly correlate with this issue.  So while I understand that it's not really too high, I would like to find out why it deviates from the norm if the other two servers are equal for all intents and purposes (same
    hardware, balanced DAG. etc).  I would like to mitigate any potential issues.  Thank you.

    Hi pchw,
    Thank you for your question.
    I am sorry that we could not find the specific things to monitor this issuer directly, because there are many reason which caused it. For example: virus, big size attachment in queue, hardware performance and so on. We could refer to the following steps
    to troubleshoot:
    Restart the service of “Microsoft Exchange transport”;
    Create a new database and move mailbox to new mailbox;
    We could do some disk health check if the load test is normal;
    Collect related application log and system log to
    [email protected] for our troubleshooting.
    We could run SDP on Exchange server and send it to
    [email protected] for our troubleshooting.
    http://blogs.msdn.com/b/askie/archive/2012/05/22/introduction-to-support-diagnostics-platform-sdp.aspx
    We could use tools  and logs to analysis if there are anything wrong or abnormal on Exchange server 2013. our bottle neck is disk IO latency, store.exe do require some CPU usage, but if our disk IO speed can keep in a normal range, the
    CPU usage will be smaller. Exchange is highly rely on disk IO performance because it need lots of IO operation regarding to transaction log and database file. If Disk IO has a high latency, I will definitely impact store.exe, if it`s getting seriously sometimes
    it may cause store.exe no response.        
    We could refer to the following link:
    https://technet.microsoft.com/en-us/library/ee832791(v=exchg.141).aspx
    If there are any questions regarding this issue, please be free to let me know. 
    Best Regard,
    Jim

  • Calls to methods in a class that extends Thread

    Hello,
    I have some code that I am initiating from within an ActionListener that is part of my programs GUI. The code is quite long winded, at least in terms of how long it takes to perform. The code runs nicely, however once it is running the GUI freezes completely until operations have completed. This is unacceptable as the code can take up to hours to complete. After posting a message on this forum in regard to the freezing of the GUI it was kindly suggested that I use multi-threading to avoid the unwelcome program behaviour.
    The code to my class is as follows:
    public class FullURLAddress
      private boolean success_flag = true;
      private BufferedReader iN;
      private Document dT;
      private EditorKit kT;
      private Element lmNt;
      private ElementIterator lmIterate;
      private XURL[] compAddress;
      private int countX = 0;           //Tracks Vector vT's size.
      private int countY = 0;           //Tracks Vector vS's size.
      private int xURLcount = 0;        //Tracks XURL objects instantiated by this FullURLAddress object.
      private SimpleAttributeSet simpAtSet;
      private String aURL;              //Contains original (Xtended) URL!
      private String fileType;
      private String indexContent;
      private String[] parseURL;
      private String[] finalStrings;
      private String[] sortStrings;
      private URL indexConnect;
      private URLConnection iconn;
      private Vector vT;            //Stores href information, from targeted URL's HTML souce code.
      private Vector vS;            //Stores sorted HREF info ".jpg" and ".gif" only (no: png, tiff, etc).
      public FullURLAddress(String aURL)
        this.aURL = aURL;
        try{
          indexConnect = new URL(aURL);
          iconn = indexConnect.openConnection();
          iN = new BufferedReader(new InputStreamReader(iconn.getInputStream()));
            /* Document creation, analysis objects instantiated */
          vT = new Vector();
          vS = new Vector();
          kT = new HTMLEditorKit();
          dT = kT.createDefaultDocument();
          dT.putProperty("IgnoreCharsetDirective", Boolean.TRUE);
            /* Iterate through document and store all HREF values */
          kT.read(iN, dT, 0);
          lmIterate = new ElementIterator(dT);
          while((lmNt = lmIterate.next()) != null)
            simpAtSet = (SimpleAttributeSet)lmNt.getAttributes().getAttribute(HTML.Tag.A);
            if(simpAtSet != null)         //As long as there are A tags to be read...
              vT.addElement(simpAtSet.getAttribute(HTML.Attribute.HREF));
              countX++;//Tracks number of HREF occurences occur, giving better control of the Vector.
        }catch(MalformedURLException e){
          success_flag = false;
          System.out.println("FullURLAddress object has encountered a "+
                             "MalformedURLException at: "+aURL);
        }catch(IOException e){
          e.getMessage();
          success_flag = false;
        }catch(BadLocationException e){
          e.getMessage();
          success_flag = false;
        /* Searches through all HREF attributes that are now stored in Vector
           vT for occurences of the character string ".htm" */
        sortStrings = new String[countX];
        for(int i=0;i<countX;i++)
          sortStrings[i] = (String)vT.elementAt(i); //Vector Strings transfered into array.
          if(sortStrings.endsWith("gif")) // Does href value end with ".jpg"?
    vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
    countY++;
    if(sortStrings[i].endsWith("GIF"))
    vS.addElement(sortStrings[i]);
    countY++;
    if(sortStrings[i].endsWith("jpg")) // Does href value end with ".jpg"?
    vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
    countY++;
    if(sortStrings[i].endsWith("JPG"))
    vS.addElement(sortStrings[i]);
    countY++;
    finalStrings = new String[countY];
    for(int j=0;j<countY;j++)
    finalStrings[j] = (String)vS.elementAt(j);
    public int getCount()
    return countY; //Returns number of instances of htm strings
    } //ending with either "jpg" or "gif".
    public String[] xurlAddressDetails()
    return finalStrings;
    I have changed the above code to make use of multithreading by making this class extend Thread and implementing the run() method as follows:
    public class FullURLAddress extends Thread
      private boolean success_flag = true;
      private BufferedReader iN;
      private Document dT;
      private EditorKit kT;
      private Element lmNt;
      private ElementIterator lmIterate;
      private XURL[] compAddress;
      private int countX = 0;           //Tracks Vector vT's size.
      private int countY = 0;           //Tracks Vector vS's size.
      private int xURLcount = 0;        //Tracks XURL objects instantiated by this FullURLAddress object.
      private SimpleAttributeSet simpAtSet;
      private String aURL;              //Contains original (Xtended) URL!
      private String fileType;
      private String indexContent;
      private String[] parseURL;
      private String[] finalStrings;
      private String[] sortStrings;
      private URL indexConnect;
      private URLConnection iconn;
      private Vector vT;            //Stores href information, from targeted URL's HTML souce code.
      private Vector vS;            //Stores sorted HREF info ".jpg" and ".gif" only (no: png, tiff, etc).
      public FullURLAddress(String aURL)
        this.aURL = aURL;
      public void run()
        try{
          indexConnect = new URL(aURL);
          iconn = indexConnect.openConnection();
          iN = new BufferedReader(new InputStreamReader(iconn.getInputStream()));
            /* Document creation, analysis objects instantiated */
          vT = new Vector();
          vS = new Vector();
          kT = new HTMLEditorKit();
          dT = kT.createDefaultDocument();
          dT.putProperty("IgnoreCharsetDirective", Boolean.TRUE);
            /* Iterate through document and store all HREF values */
          kT.read(iN, dT, 0);
          lmIterate = new ElementIterator(dT);
          while((lmNt = lmIterate.next()) != null)
            simpAtSet = (SimpleAttributeSet)lmNt.getAttributes().getAttribute(HTML.Tag.A);
            if(simpAtSet != null)         //As long as there are A tags to be read...
              vT.addElement(simpAtSet.getAttribute(HTML.Attribute.HREF));
              countX++;//Tracks number of HREF occurences occur, giving better control of the Vector.
        }catch(MalformedURLException e){
          success_flag = false;
          System.out.println("FullURLAddress object has encountered a "+
                             "MalformedURLException at: "+aURL);
        }catch(IOException e){
          e.getMessage();
          success_flag = false;
        }catch(BadLocationException e){
          e.getMessage();
          success_flag = false;
        /* Searches through all HREF attributes that are now stored in Vector
           vT for occurences of the character string ".htm" */
        sortStrings = new String[countX];
        for(int i=0;i<countX;i++)
          sortStrings[i] = (String)vT.elementAt(i); //Vector Strings transfered into array.
          if(sortStrings.endsWith("gif")) // Does href value end with ".jpg"?
    vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
    countY++;
    if(sortStrings[i].endsWith("GIF"))
    vS.addElement(sortStrings[i]);
    countY++;
    if(sortStrings[i].endsWith("jpg")) // Does href value end with ".jpg"?
    vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
    countY++;
    if(sortStrings[i].endsWith("JPG"))
    vS.addElement(sortStrings[i]);
    countY++;
    finalStrings = new String[countY];
    for(int j=0;j<countY;j++)
    finalStrings[j] = (String)vS.elementAt(j);
    /* What happens with these methods, will they need to have their
    own treads also? */
    public int getCount()
    return countY; //Returns number of instances of htm strings
    } //ending with either "jpg" or "gif".
    public String[] xurlAddressDetails()
    return finalStrings;
    Are there any special things that I need to do in regard to the variables returned by the getCount() and xurlAddressDetails() methods. These methods are called by the code that started the run method from within my GUI. I don't understand which thread these methods are running in, obviously there is an AWT thread for my GUI and then a seperate thread for my FullURLAddress objects, but does this new thread also encompass the getCount() and xurlAddressDetails() methods?
    Please explain.
    This probably sounds a little wack, but I don't understand what thread is responisble for the methods in my FullURLAddress class aside of course from the run() method which is obvious. Any help will be awesome.
    Thanks
    Davo

    Threads are part of code that allows you to run multiple operations "simultaneously". "Simultaneously", because threads are not run actually simultaneously in any one-CPU machine. Since you most propably have only one CPU in your system, you can only execute one CPU instruction at time. Basically this means that your CPU can handle only one java-operation at time. It does not matter if you put some code in thread and start it, it will still take up all CPU time as long as the thread runs.
    So you would need a way to let other threads run also, for that purpose thread contains a yield feature that allows you to give time for other threads to run.
    http://java.sun.com/j2se/1.4.1/docs/api/java/lang/Thread.html#yield()
    You need to use thread's yield() method in your thread code, in a place you want to give other threads time to run. Also bear in mind that if you yield your first thread run to allow second thread to run, you also need to add yield to the second thread also. If you don't, after yielding the first thread, the second thread will eat up all CPU time until it finishes, thus meaning the rest of your first thread will be run after second thread is done.
    One good place to execute yield() is usually at the end of a loop, for example 'for' or 'while' loop. This way you prevent for example while-deadlocks.
    Here is a java thread tutorial, worthy reading:
    http://java.sun.com/docs/books/tutorial/essential/threads/

  • How do you modify the default Execute thread count in Weblogic Server 9.2?

    How do you modify the default Execute thread count in Weblogic Server 9.2?
    How can you tune the starting number of weblogic.ExecuteThread on server startup and/or set minimum number?
    Is there an option from the console?
    Please let me know.
    Thanks

    Self tuning will automatically manage the threads but however you can still control the min and max by adding the min and max values for each instance either directly adding in config.xml or through JVM settings
    1) Modifying the config.xml
    Just add the following line(s) to each server definition :
    <server>
    <name>AdminServer</name>
    <self-tuning-thread-pool-size-min>100</self-tuning-thread-pool-size-min>
    <self-tuning-thread-pool-size-max>200</self-tuning-thread-pool-size-max>
    </server>
    2) Adding some JVM parameters
    It's safer the following way :
    add the following option in your command line : -Dweblogic.threadpool.MinPoolSize=100
    Regards
    RR

  • Storage Thread Count

    I'm trying to write up advice for Storage node thread count.
    Obviously, this is dependent of the machines - we have 48G 8processor machines, running 20 x2G Storage nodes and 2 x 2G Proxy nodes.
    My understand is that when you don't have a cache-store you would set the thread-count to 0 (run on service thread).
    I'm wondering how one might calculate this if you have a cache store ( and whether its different if you have write through / behind ).
    I can see that in write-through it will spend most of the time with the database and a higher thread count would be good (its a pity its not a variable size pool with min and max).
    I'm not sure about write-behind - I can imagine that a low thread count might be reasonable here.
    I'm sure Rob (or others ) have a good formula for this.
    Best, Andrew.

    I have a brief recollection (may be wrong about this) that there is some info (via JMX) about average thread pool usage that may be of assistance (if the average is close to your specified max it may pay off to increase it furthe and see if throughput goes up or down, if the average is close to zero it may be just as well to use zero thread count rather than what is used at the moment).
    One must also decide what is most important - to max out throughput or to limit median response time. With a larger thread pool more queries can be in progress at the same time (hopefully reducing median responce time since long runing queries dont lock out other queries) but resources will be split between them (at least if the thread count is larger than the number of cores) making the total throughput lower...
    /Magnus

  • Thread count tuning

    Hi!
    We are running a weblogic 5.1 server for jsp/servlet/ejb behind an apache web
    server, via the wls/apache bridge. As the number of users increased we expereienced
    slow response times. We checked thread dumps from peak hours and saw that all
    servlet threads were busy writing to network sockets. Still, if we check the internet
    line usage, we are not using up all our bandwith.
    We've managed to solve this by adding more threads to our wls server (36 servlet
    threads, 46 totally). This has however slowed down our database somewhat since
    we have to increase the connection pool size with the number of server threads.
    So my question would be: is there some other, more elegant, way to solve this?
    Having 46 execute threads seems pretty much (15 is recommended from BEA). Ideally
    I would like the wls threads to write their results as quickly as they can to
    the apache server, disconnect from the socket and leave actual work of writing
    all the data back to the end user's browser to apache. My network knowledge is
    pretty limited so I'm not sure if this is possible.
    /Mattias

    Why do you need to have the maximum thread count equal to the maximum number of simulatneous users? You'll never end up with a system that has 60,000 threads.
    If you are doing traditional-style HTTP, then typically you can support many thousands of users with just a few threads. For example, our SPECjAppServ er submissions use about 40 threads to handle 4000 clients. It all depends on how many requests each client actually makes per second, and how long each request takes. If the clients are idle for long periods of time, you could handle 10s of thousands with just a few threads.
    The keep-alive tuning is also critical in that scenario, as the server will eventually start disconnecting clients, who will re-create the TCP connections. That works seemlessly from a functional point of view, but isn't necessarily the optimal thing for performance.
    On the other hand, if you're trying to use a Web 2.0-style HTTP request where you simulate server pushes by having the servlet request block, then yes, in 8.1 you will need one thread per client, but you'll be bound by OS and other system constraints on the number of threads the process can have. You'd be much better off in that case using the Asynchronous Request processing features being added to AS 9.1 (see Sun's project glassfish for details).
    For information on configuring the thread count for 8.1, see:
    http://docs.sun.com/source/819-0215/httpservice.html
    In particular -- the section on Configuring HTTP Service Request Processing Threads.

Maybe you are looking for

  • Need procedure for creation of BW Roles, Assigning Queries,Publishing Roles

    Hi Experts,   Could you please let me know the procedure for creation of BW Roles, Assigning Queries,Publishing Roles in Business Explorer (BEx - BW 3.5) Thanks in advance, Andy

  • Problem while creating JAR file for my swing application

    Hi... Using my swings application I am trying to Run different software�s . My program is Running fine from command prompt. If I create JAR file It is giving error like �Failed to load Main-Class manifest attribute from .jar� Can anybody help me to c

  • Another CS6 build questions thread

    Hi guys, My first post here, I've been reading lots on here today thanks for all the info!, I'm building a new edit of, mainly for pp & ae cs6. I think I'm there with components but would love to hear your opinions and experiences before I click the

  • Help me please  !  Trying to publish NEW site to .mac

    HIya Not sure if anyone out there can help me but I tried to make changes to my web site. I keep getting the error message an erroe occured while publishing file 'Web/Sites/iWeb/Site'. Was working fine last night and yet this morning nothing happens.

  • Need to show date & a counter in my video - HELP!

    I need the date and a counter to show (superimposed?) over the video in my iMovie/iDVD. I know the date and time recorded was imported with the video files from my DV camcorder because they are available in File Info. The video recorded was a court d