[jboss-user] [JBoss Web Services] - JBoss WebServices and Invokers

Rohit Macherla do-not-reply at jboss.com
Thu Mar 31 05:04:48 EDT 2011


Rohit Macherla [http://community.jboss.org/people/rohit.macherla] created the discussion

"JBoss WebServices and Invokers"

To view the discussion, visit: http://community.jboss.org/message/596732#596732

--------------------------------------------------------------
Hi all,
I need a little help in understanding how JBoss Invokers work. I am not sure I understood 
whatever I've read, so please let me know when I am wrong.

I use JBoss 4.2.3 in my project and have JAX-WS webservices deployed in it (Consider one of 
these as WebService A). These WebServices are POJO based ones and form WebService clients to 
EJB based WebServices that my vendor offers (Consider one of these vendor WebServices V). 
Hence, I have WebService to WebService calls within same JVM, i.e., the invocation flow is:
External system -> A -> V -> Database

When a new request comes in for A, where does the invoker come in ? I thought that the 
internal WebService call from A to V uses the invoker as V is an EJB based WebService and I 
have configured "Standard Stateless SessionBean" to use "stateless-rmi-invoker" which inturn 
uses "jboss:service=invoker,type=pooled" (That was what I've configured in standardjboss.xml). 

My jboss-service.xml for pooled invoker is: 


<mbean code="org.jboss.invocation.pooled.server.PooledInvoker"
      name="jboss:service=invoker,type=pooled">
      <attribute name="NumAcceptThreads">5</attribute>
      <attribute name="MaxPoolSize">300</attribute>
      <attribute name="ClientMaxPoolSize">300</attribute>
      <attribute name="SocketTimeout">240000</attribute>
      <attribute name="ServerBindAddress">${jboss.bind.address}</attribute>
      <attribute name="ServerBindPort">4445</attribute>
      <attribute name="ClientConnectAddress">${jboss.bind.address}</attribute>
      <attribute name="ClientConnectPort">0</attribute>
      <attribute name="ClientRetryCount">1</attribute>
      <attribute name="EnableTcpNoDelay">false</attribute>


      <!-- Customized socket factory attributes
      <attribute name="ClientSocketFactoryName">custom.client.factory</attribute>
      <attribute name="ServerSocketFactoryName">custom.server.factory</attribute>
      <attribute name="SslDomain">java:/jaas/pooledInvoker</attribute>
      -->
      <depends 
optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
   </mbean>


However, when I take a look at the threaddump (via the JMX console jboss.system:type=ServerInfo listThreadDump()), I don't find any PooledInvokerThread instances in the thread dump. Does that mean that I am not using pooled invokers ?

I am trying to see if there are any areas where I can tweak some parameters to improve the number of requests that JBoss can handle for my application. So, I just wanted to know if I am looking in the right areas.

Thanks.
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/596732#596732]

Start a new discussion in JBoss Web Services at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2044]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20110331/c90763b2/attachment.html 


More information about the jboss-user mailing list