OnAlarm/wait thread count configuration in BPEL

BPEL 10g, We have a com.oracle.bpel.expirationAgent.threadCount property to set the thread count for OnAlarm/wait. ORACLE_HOME/bpel/domain/DOMAIN_NAME/config/resources-quartz.properties.
BPEL 11g, Can you please point me the configuration file to set the thread count for OnAlarm/wait. I could not find the resources-quartz.properties in SOA 11g.

Have you been able to find the file or a similar properties location in 11g? I am also looking for it.

Similar Messages

  • Configuring Execute Thread Count

    Hi,
    I am working on a webapp thats using Weblogic 8.1 (SP2) as the application server.
    The admin server for Weblogic currently provides 2 execute threads as default.
    However I was wondering if I can configure the admin server for a higher number
    of execute threads.
    I have the following questions:
    1.> Does configuring the number of threads for the admin sever provide any additional
    value? has any one come across a big application where more than 2 execute threads
    are required for the admin server?
    2.> If yes, is it possible to configure the number of execute threads for the
    admin server? I did some search on the bea website and didnt find anything that
    explicitly says that the property is configurable. Is this true?
    3.> If it is configurable, then how do we go about setting it up?
    If anyone has worked around this and can provide me with any information or references,
    that would be great.
    Thanks

              Sriram,
              Take a look at the following URL for setting the thread count in WLS 6.1
              http://edocs.bea.com/wls/docs61/perform/WLSTuning.html#1112343
              Chuck Nelson
              Developer Relations Engineer
              BEA Technical Support
              

  • Launching VB6 Editor after installing Visual Studio 2013 results in "Please wait while Windows configures Microsoft Visual Studio..."

    I have had various versions of Visual Studio installed beside Visual Basic 6.0 Enterprise for some time with no problems, most recently Visual Studio 2012 Premium.
    I recently installed Visual Studio 2013 Premium, and now every time I open VB6 I get a dialog that says "Please wait while Windows configures Microsoft Visual Studio Professional 2013" that shows a progress bar. After it finishes (30 seconds or
    so), it launches again and again and finally VB6 will open. This happens with each instance of VB6, regardless if I've already done it once and never run VS2013 in between.
    If I cancel the dialog, I get this error message in a dialog: "Error 1712. One or more of the files required to restore your computer to its previous state could not be found. Restoration will not be possible." Several more "Please wait"...
    dialogs will appear and if I continue to cancel, eventually I'll get the VB6 editor. It appear to work fine despite the error messages.
    It seems to me that the VS2013 installer flagged some dll's or other files to be rolled back whenever starting VB6. It doesn't appear to be necessary, and I'd like to avoid playing the "Please wait" wack-a-cancel-button game before launching each
    instance of VB6 (or waiting several minutes for no reason). So how do I fix this?
    Note: I've seen something similar happen in Outlook on a different PC when upgrading from 2010 to 2013. The same sort of "Please wait"... dialog would appear each time I opened Outlook. Judging by the "similar" questions that popped up when
    entering this forum post, I'd say this is a general problem with upgrading older versions or installing newer versions of major Microsoft software side-by-side.
    /* Don Reynolds */

    I found the answer!
    I was having the exact same issue, and I was search for a solution and I happened across the following thread: http://social.msdn.microsoft.com/Forums/en-US/f4b0fd38-f4f9-41ea-bd8d-834203a175d2/building-visual-studio-2010-project-triggers-please-wait-while-windows-configures-visual-studio?forum=vssetup&prof=required
    Scroll a small bit down, and there is a post by Barry Wang explaining that you need to use event viewer to find out what is missing. Anyway, I opened event viewer, then open VS 6, then hit refresh in the event viewer (under Windows Logs -> Application)
    and saw a warning message from MsiInstaller. It gave me the following message:
    Detection of product '{9C593464-7F2F-37B3-89F8-7E894E3B09EA}', feature 'Visual_Studio_Professional_x86_enu', component '{E3FF99AA-78B9-4A06-8A74-869E9F65E1FE}' failed.  The resource 'C:\WINDOWS\Microsoft.NET\Framework\URTInstallPath_GAC\' does
    not exist.
    I opened an elevated command prompt, I navigated to the C:\WINDOWS\Microsoft.NET\Framework folder and verified that 'URTInstallPath_GAC' didn't exist, and then I did "md URTInstallPath_GAC".
    Closed and reopened VS 6, and it instantly opened - no "Please wait" message.
    Now this may or may not be the same problem you are having (problem is - I have had it happen on two separate computers now with VS 6 and VS 2013 installed), but it should point you in the right direction. In fact, you should be able to use the Event Viewer
    for anytime the "Please wait" message shows up for any application, and then once there find out what is really missing.

  • 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.

  • 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

  • Query Regarding Execute Thread Count

    Hi,
    My understanding of Execute Thread Count is the threads which are assigned to service
    requests coming to Weblogic Server.
    In our current architecture a request for generating report is directed to EJB method
    which makes a call to another Server (Report Server for executing reports), the report
    Server in turn calls the EJB residing on Weblogic Server for getting the data.
    So, is my assumption correct that with our current architecture we are limited to
    concurrency of Execute Thread Count -1. (Every request for report will consume 2
    Excute threads, and others will have to wait till the first request gets completed
    and 2 threads are freed).
    I also read from the postings that Weblogic takes some of the threads, so it actually
    will be limited to (Execute thread count - Weblogic Held- 1).
    Please corect me if I am wrong.
    Thanks and Regards
    Rashmi

    Hi,
    Thanks very much for the suggestion. I tried, and it is using 2 Execute Threads.
    Thanks
    Rashmi
    "Dave Martin" <[email protected]> wrote:
    >
    Rashmi:
    If you are interested in answering the question rigorously, why not just
    throw a
    fake exception along both the report generation path and the runReport method
    of
    the ReportServer, then record their stack traces to a file for comparison?
    From the sounds of it, your app wants to make the actual report generation
    asynchronous
    from the post of the reporting request. If they're really asynchronous,
    then your
    ReportServer must have some kind of blocking queue that will "wake up" when
    it has
    work to be done. Depending on how you implemented this, your runReport
    method may
    not be running a WebLogic execute thread at all.
    Seems to me that you should be thinking of this as consuming one execute
    thread regardless.
    Even if the two pieces of work are asynchronous, the first thread finished
    its work
    at the point that it posts to the second thread (at least, per your description).
    So at any one time, at max one execute thread is being consumed per request.
    But capture the stack traces and have a look for yourself.
    Dave Martin
    "Rashmi S" <[email protected]> wrote:
    Hi,
    Thanks for your reply.The reason why I say 2 threads will be consumed is
    as follows
    1. First execute thread will be used for the request to Weblogic Server
    to run the
    report originating from a client.
    2. Now, within the ReportServices EJB there is a call to Report Serverto
    run the
    report. The running of report is done on the Report Server which is ona
    separate
    m/c. Within the runReport method of the Report Server ,the data is fetched
    for the
    report by making a context look-up of another session EJB which fetches
    the data.
    So, the second Execute thread will be consumed for executing the EJB that
    fetches
    the data.
    Am I correct?
    Thanks and Regards
    Rashmi
    "Cameron Purdy" <[email protected]> wrote:
    Incoming requests (from outside the server) use one thread for the duration
    of their processing. Previous to their processing they are queued until
    a
    thread is available. So you would use one thead per concurrent request,
    not
    two. Otherwise, it sounds right.
    Peace,
    Cameron Purdy
    Tangosol, Inc.
    Clustering Weblogic? You're either using Coherence, or you should be!
    Download a Tangosol Coherence eval today at http://www.tangosol.com/
    "Rashmi S" <[email protected]> wrote in message
    news:[email protected]...
    Hi,
    My understanding of Execute Thread Count is the threads which are assignedto service
    requests coming to Weblogic Server.
    In our current architecture a request for generating report is directedto EJB method
    which makes a call to another Server (Report Server for executingreports), the report
    Server in turn calls the EJB residing on Weblogic Server for getting
    the
    data.
    So, is my assumption correct that with our current architecture we arelimited to
    concurrency of Execute Thread Count -1. (Every request for report willconsume 2
    Excute threads, and others will have to wait till the first request
    gets
    completed
    and 2 threads are freed).
    I also read from the postings that Weblogic takes some of the threads,so
    it actually
    will be limited to (Execute thread count - Weblogic Held- 1).
    Please corect me if I am wrong.
    Thanks and Regards
    Rashmi

  • Thread count in a distributed service

    Hi,
         i needed some information on the thread-count attribute in a distributed service. i would like to know how do we decide on the thread count. would increasing the thread count in the tangosol-coherence.xml increase the performance of tangosol as well.
         looking forward to your help
         Thanks
         Jigs

    To go into this a bit further...
         Each service instance has its own primary thread. This thread has the option of using its own isolated thread pool if the thread-count is greater than zero. If the thread-count is zero, then all work will be performed by the primary service thread. If the thread-count is greater than zero, then all work will be performed by the thread pool (the primary thread acts as a task coordinator).
         Note that the thread-count is per-service and per-cluster-member. Each cache service has a unique name. The CacheFactory class uses a single cache service instance for each cache type (Replicated/Distributed/etc). If you manually create additional cache services, they will each have their own isolated thread pools.
         Additionally, each Invocation service has its own thread pool. This setting is very important as the Invocation service is quite often used to execute long-running user tasks. If the thread pool is saturated with user tasks, then further calls to the Invocation service will block until user tasks complete and threads become available. Using named Invocation service instances will allow you to isolate critical tasks for better application availability.
         Note that this information is current as of Coherence 2.5, but may change in future releases as threading models have a huge impact on performance and scalability. Having said that, there are no significant changes planned at this point in time.
         Jon Purdy
         Tangosol, Inc.
         =================
         Added 2004-12-02 by JP:
         Also, as a very specific instance, the backup copy(ies) of a distributed cache are created on the service thread ... this means that while backup copies are being created on a node, no new tasks will be dispatched to that service's thread pool. For in-memory backup copies, this is actually optimal as adding an item to a HashMap/HashTable is roughly as fast as handing it off to another thread. However, if the backup-copy is configured to disk-based storage (or other high-latency resource), an asynchronous backup implementation should be used to eliminate latency. See AsyncBinaryStore for more information.

  • Thread Count Vs no of simultaneous users

    Hi,
    I have been testing my customer made adapter on WLI2.1 and WLS6.1SP1 for
    simulataneous users access.
    I found that as long as the no of simultaneous users is less than the Thread
    Count defined for WLI, it works fine.
    But if the no of users exceed the thread count, the server hangs.....idle
    threads become 0.
    Does my Thread Count always have to be greater than the no of simulatneous
    users am expecting ?
    Thanks
    Amit

    In my openion, yes, number of threads configured should be greater than simultaneous users.
    Thanks
    Niranjan

  • 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/

  • Server count       thread count

    our server has 4 cpus(double  kernel), 8GB memory
    windows 2003       <b>64bit</b>
    we use netweaver 7.0 with sp6
    how much <b>server node</b>
    and   how much threadcount for '<b>applicationthreadmanager</b>' or '<b>threadmanager'</b>(MIN MAX Thread count)
    will increase <b>performance</b> ?
    regard

    Hey
    The amount of 'applicationthreadmanager' or 'threadmanager'
    is depended on two things:
    1. The system you are using, for example XI, BI and etc.
    2. The load on the system.
    In general, the J2EE comes with default,
    and if you are not having performance issues,
    than you should keep this parameter without any change.
    If you are having performance problems,
    like describes in the following links, you should change the configuration:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_mid/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d393530393231%7d
    Example for XI configuration:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_xi/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d393337313539%7d
    How to configure number of concurrent processes in XI?
    Example for Portal configuration:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_jas/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d383236333931%7d
    Here is an a link to the configure procedure:
    http://help.sap.com/saphelp_nw04/helpdata/en/47/9a3e759e2141a7b03e4f37e6c14074/frameset.htm

  • Oc4j thread count under linux

    hi all !
    i have a memory problem on my as903 on linux and now i'm confused about why there are 18 oc4j threads started for my 5 deployed applications (not to mention the others for administration!??).
    right now i wonder if there is a way to configure this thread count ?
    anyone of you solved this problem ?
    alois

    OC4J 903 releases and later have a configurable thread-pool, where you can set the upper and lower bounds for the number of threads to use.
    I don't know that this will be the cause of the memory problem you mention, but if you want to tune it, then see: http://otn.oracle.com/docs/products/ias/doc_library/903doc_otn/generic.903/a97677/advanced.htm#1011968
    cheers
    -steve-

  • Change the Execute Thread Count im weblogic9.2

    Hi
    I am trying to change the execute thread count in weblogic 9.2 but i am not able to find the location in weblogic Console to change it can any one help me

    Hi,
    In previous versions of WebLogic Server, processing was performed in multiple execute queues. Different classes of work were executed in different queues, based on priority and ordering requirements, and to avoid deadlocks. In addition to the default execute queue, weblogic.kernel.default, there were pre-configured queues dedicated to internal administrative traffic, such as weblogic.admin.HTTP and weblogic.admin.RMI. Now the Same thing is done using WorkManagers...
    WebLogic Server, Version 8.1 implemented Execute Queues to handle thread management which allowed you to create thread-pools to determine how workload was handled. WebLogic Server still provides Execute Queues for backward compaitibility, primarily to facilitate application migration. However, new application development should utilize Work Managers to peform thread management more efficiently.
    You can enable Execute Queues in the following ways:
    * Using the command line option*
    -Dweblogic.Use81StyleExecuteQueues=true
    So in that Case ...*config.xml* entry will be like this:
    <server>
    <name>AdminServer</name>
    <execute-queue>
    <name>weblogic.kernel.Default</name>
    <queue-length>256</queue-length>
    </execute-queue>
    <use81-style-execute-queues>true</use81-style-execute-queues>
    <listen-port>7001</listen-port>
    <web-server>
    <web-server-log>
    <file-name>../../logs/admin_access.log</file-name>
    </web-server-log>
    </web-server>
    <listen-address>aaa.bbb.com</listen-address>
    </server>
    for more detailed Information Please refer to:
    http://download.oracle.com/docs/cd/E11035_01/wls100/config_wls/self_tuned.html
    Edited by: Jay SenSharma on Jan 20, 2010 3:42 PM

  • 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
              

  • When thread-count 65 /thread-count can imporve the performance

    We are using very classical way get / put object with key for our application on embedding mode.
    Application run on top Weblogic Server, Tangosol as embedding Lib.
    in this case, tunning this parameter can improve performance or non?
    Best regards.
    Jerome
    <invocation-scheme>
    <scheme-name>InvocationScheme</scheme-name>
    <service-name>InvocationService</service-name>
    <thread-count>65</thread-count>
    <autostart>true</autostart>
    </invocation-scheme>

    Hi,
    if I understand well: When we are using embedding mode with Weblogic Server, we are using the thread distributed by WLS, we don't need any thread by invocable Service thread, Am I right?
    attached is one Thread dump, we are seeing a lot of wait lock, some one can give a more clear explanation? Sorry, it's quite long, but i can't use attach mode. I can send the summary
    Best regards.
    Jerome
    ========================================================================
    Dump Files
    Stat Count
    Thread/Locks     Dump_0     Dump_1     Dump_2     Dump_3     Dump_4     Total      Average     Lock Type
    Total Active ExecuteThread     25     18     31     119     138     331          
    Total Waiting thread among Active ExecuteThread and with respect to Coherence related locks     22     15     28     116     134     315          
    1. Locks waiting by IMPI_IMPU_DAO.get_all_IMPU_of_IMSU_with_User_State(IMPI_IMPU_DAO.java:178)          25          DistributedCache$GetRequest$Poll
    2. Locks waiting by IMPI_IMPU_DAO.get_all_IMPU_of_IMSU_with_User_State(IMPI_IMPU_DAO.java:186)          33          DistributedCache$GetRequest$Poll
    3. Locks waiting by IMPI_IMPU_DAO.get_all_IMPU_of_IMSU_with_User_State(IMPI_IMPU_DAO.java:201)          40          DistributedCache$GetRequest$Poll
    4. Locks waiting by IMPI_IMPU_DAO.get_by_IMPI_and_IMPU_ID(IMPI_IMPU_DAO.java:74)          8          DistributedCache$GetRequest$Poll
    5. Locks waiting by IMPU_DAO.get_by_Identity(IMPU_DAO.java:201)     0     0     3     10     16     29     5.8     DistributedCache$GetRequest$Poll
    6. Locks waiting by IMPU_DAO.get_by_Identity(IMPU_DAO.java:206)     0     0     7     23     1     31     6.2     DistributedCache$GetRequest$Poll
    7. Locks waiting by IMPI_DAO.get_by_Identity(IMPI_DAO.java:105)     0     0     1     6     3     10     2     DistributedCache$GetRequest$Poll
    8. Locks waiting by IMPI_DAO.get_by_Identity(IMPI_DAO.java:110)     0     0     0     3     7     10     2     DistributedCache$GetRequest$Poll
    9. Locks waiting by IMSU_DAO.get_by_ID(IMSU_DAO.java:86)     2     0     2     4     9     17     3.4     DistributedCache$GetRequest$Poll
    10. Locks waiting by Preferred_SCSCF_Set_DAO.get_all_from_set(Preferred_SCSCF_Set_DAO.java:81)     2     5     2     20     9     38     7.6     distributedCacheRequest.PartialRequest$Poll
    11. Locks waiting by Preferred_SCSCF_Set_DAO.get_all_from_set(Preferred_SCSCF_Set_DAO.java:77)     1     5     0     0     12     18     3.6     distributedCacheRequest.PartialRequest$Poll
    12. Locks waiting by CapabilitiesSet_DAO.get_all_from_set(CapabilitiesSet_DAO.java:77)     0     2     3     10     5     20     4     distributedCacheRequest.PartialRequest$Poll
    13. Locks waiting by VisitedNetwork_DAO.get_by_Identity(VisitedNetwork_DAO.java:73)     0     0     2     15     5     22     4.4     distributedCacheRequest.PartialRequest$Poll
    14. Locks waiting by IMPU_VisitedNetwork_DAO.get_by_IMPU_and_VisitedNetwork_ID(IMPU_VisitedNetwork_DAO.java:65)     1     0     3     4     6     14     2.8     DistributedCache$GetRequest$Poll
    ========================================================================

  • 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

Maybe you are looking for