JMS Adapter performance

Hello
I'am using JMS Adapter to initiate bpel processes. Can anyone suggest, how can I increase JMS adapter performance.
Now JMS adapter is able to consume about 700 messages per minute. Does anyone could provide me some performance number for this adapter. I'am using BPEL 10.1.2 beta 2.
Regards
J

You mention JMS performance, but what is your configuration? Are you using Oracle Lite as the dehydration store? 700 messages = process instantiations per minute (=more than 10 per second) is probably the max you will get with Oracle Lite as the dehydration store. What is the process doing that you are instantiating?
Try using the full Oracle db instead.
Sandor

Similar Messages

  • JDBC vs JMS adapter performance

    Hi Guys,
    We have an interface - to send 2 million records (10 - 12 fields) out of SAP and we are on PI 7.40.
    I am trying to compare the pros and cons of JDBC and JMS adapters.
    Does anyone of you have some bench marks on this topic and I would really appreciate it.
    Thanks,
    -Naveen.

    Hi Naveen,
    If your idea is to do a migration and to use only one time the interface i think SAP PI is not the best solution and you should do a copy from your DB to the new one. However, if you are working really with a interface with 2 million records traffic per day, i think you can do easier with JDBC, as Hareesh said with 5 until 10 MB i have noticed a quicker performance, all depends about your PI hardware. You can do some test, if the time is between 5 to 10 seconds with a huge load, for example every 5 seconds and other asynch scenarios working, you can set it.
    Hope this helps.
    Regards.

  • XI 3.0 - How to increase performance using TibCo JMS Adapter...

    Hi,
    Does anyone have any idea if/which properties can be modified to improve the polling interval of the JMS adapter for Tibco?
    Another forum message mentioned a method called setPollingInterval, but this only seems to relate to MQ series.
    I have tried options like creating multiple communiction channels pointing to the same non-exclusive queue, increasing the server node count (this improves pickup, but reduces overall throughput as the SLD data is no longer buffered).
    I have also tried the method called "setConnAttemptDelay" on the com.tibco.tibjms.TibjmsQueueConnectionFactory class but this did no seem to help.
    Any suggestions please?
    thanks
    Brian

    The answer is to either add additional J2EE server nodes to your PI/XI instance or add additional Business Services and configure addition Comms channels for these

  • Unable to get BPEL composite with JMS Adapter running.

    Hello All,
    I have tried to build a BPEL Composite to use JMS Adapter, by following the link http://blogs.sun.com/malkit/entry/oracle_soa_suite_bpel_to
    Steps in WebLogic console:
    1. Created a new JMS Server JMSServer-0 (file persistent store) this is targeted to AdminServer
    1. Created a new JMS Module SystemModule-0
    3. Created a connection factory in this module JNDI jms/SendRecvConnectionFactory
    4. Created a queue in this module JNDI jms/ReceiveQueue
    5. Created a SubDeployment Subdeployment0 for these two components.
    6. Created a new JMSAdapter connection pool JNDI eis/tst/TestJMSConn and set the ConnectionFactoryLocation property to jms/SendRecvConnectionFactory
    Next, I created a simple Java client and tested the JMS Queue to work fine. This went well.
    Next, used JDeveloper to create a BPEL Composite to use JMSAdapater, and followed the guidelines given in the above URL to create the JCA file.
    While deploying this BPEL composite, I hit a warning in SOA diagnostic server:
    JMSAdapter JMSSampleProj JmsDDEndpoint_onFailure: Unable to resolve 'jms.ReceiveQueue'
    As a result of this warning, the BPEL Composite instances do not get created when I send a message from the test client.
    Please find herewith the log details.
    I am using JDeveloper Build JDEVADF_11.1.1.4.0_GENERIC_101227.1736.5923 and FMW 11g R1 PS3 RC11.
    Any help here?
    [2011-04-20T08:33:12.098-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.bpel.engine.deployment] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] BPEL Component "default/JMSSampleProj!1.0*soa_8a1f7f5d-5ede-4e3a-8740-20fb90ffdab2/JMSampleProcess" successfully loaded.
    [2011-04-20T08:33:12.098-05:00] [soa_server1] [NOTIFICATION] [] [oracle.integration.platform.blocks.deploy] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] [Deployment] Component: JMSampleProcess was successfully deployed to service engine:implementation.bpel, for composite:JMSSampleProj
    [2011-04-20T08:33:12.114-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> [JMSSampleProj.OutBound/1.0] :init Initializing OutBound_jms.jca
    [2011-04-20T08:33:12.114-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> OutBound JCAEndpointInteraction::initInteraction - Activating Endpoint Interaction, Endpoint Id='OutBound
    [2011-04-20T08:33:12.114-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> [JMSSampleProj.OutBound/1.0] :init Successfully initialized OutBound_jms.jca
    [2011-04-20T08:33:12.114-05:00] [soa_server1] [NOTIFICATION] [] [oracle.integration.platform.blocks.mesh] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] EventBus not null
    [2011-04-20T08:33:12.114-05:00] [soa_server1] [NOTIFICATION] [] [oracle.integration.platform.blocks.mesh] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] component : Component Name: JMSampleProcess[[
    implementation: oracle.fabric.composite.component.implementation.BPELImplementation@51db9e4
    oracle.fabric.composite.model.ComponentTypeModel@51db9e6
    [2011-04-20T08:33:12.114-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.bpel.engine] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] CubeServiceEngine=> initing default/JMSSampleProj!1.0*soa_8a1f7f5d-5ede-4e3a-8740-20fb90ffdab2/JMSampleProcess
    [2011-04-20T08:33:12.458-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> [JMSSampleProj.InBound/1.0] :load Loading InBound_jms.jca ..
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound Performing JCAEndpointActivation::prepareActivation for {PayloadType=TextMessage, UseMessageListener=false, DestinationName=jms/ReceiveQueue}
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound JCAEndpointActivation::prepareActivation - Locating JCA Binding Component instance: SCA_AS11R1
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound JCAEndpointActivation::initiateInboundJcaEndpoint - Creating and initializing inbound JCA endpoint for:[[
    endpoint='InBound'
    WSDL location='oramds:/deployed-composites/default/JMSSampleProj_rev1.0/InBound.wsdl'
    portType='Consume_Message_ptt'
    operation='Consume_Message'
    activation properties={PayloadType=TextMessage, UseMessageListener=false, DestinationName=jms/ReceiveQueue}
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound JCAEndpointActivation::initiateInboundJcaEndpoint - Creating endpoint (0) for InBound
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound JCAEndpointActivation::prepareActivation - Done preparing JCAEndpointActivation for Service 'InBound'
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> [JMSSampleProj.InBound/1.0] :load Successfully loaded InBound_jms.jca
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> [JMSSampleProj.InBound/1.0] :init Initializing InBound_jms.jca
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound JCAEndpointActivation::performActivation - Performing JCA Endpoint Activation, Endpoint Id='InBound'
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> InBound Performing endpoint activation (1) for InBound
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> JMSSampleProj JCA Binding Component instance: SCA_AS11R1 - endpointActivation for portType=Consume_Message_ptt, operation=Consume_Message
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> JMSSampleProj Creating new instance of Resource Adapter oracle.tip.adapter.jms.JmsResourceAdapter
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> JMSSampleProj JCA Binding Component instance: SCA_AS11R1 - starting Resource Adapter oracle.tip.adapter.jms.JmsResourceAdapter
    [2011-04-20T08:33:12.473-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JMSAdapter JmsResourceAdapter_start: Jms Adapter started
    [2011-04-20T08:33:12.520-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JMSAdapter JmsResourceAdapter_endpointActivation: Activating endpoint Endpoint_1
    [2011-04-20T08:33:12.520-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JMSAdapter JMSSampleProj JmsDDEndpoint_start: Starting endpoint Endpoint_1
    [2011-04-20T08:33:12.520-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JMSAdapter JMSSampleProj JmsDDEndpoint_run: Calling register...
    [2011-04-20T08:33:12.520-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> JMSSampleProj JCA Binding Component instance: SCA_AS11R1 - successfully completed endpointActivation for portType=Consume_Message_ptt, operation=Consume_Message
    [2011-04-20T08:33:12.520-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> [JMSSampleProj.InBound/1.0] :init Successfully initialized InBound_jms.jca
    [2011-04-20T08:33:12.520-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] JCABinding=> :defaultRevisionChanged - updated default revision to default/JMSSampleProj!1.0 for default/JMSSampleProj
    [2011-04-20T08:33:12.567-05:00] [soa_server1] [NOTIFICATION] [SOA-21538] [oracle.integration.platform.blocks.deploy.servlet] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] Removing temporary directory: C:\DOCUME~1\abhatika\LOCALS~1\Temp\1\sar_base_dir_1303306387379.
    [2011-04-20T08:33:12.567-05:00] [soa_server1] [NOTIFICATION] [SOA-21557] [oracle.integration.platform.blocks.deploy.servlet] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041f2,0] [APP: soa-infra] CompositeDeploymentServlet-----> completed deploying sca_JMSSampleProj_rev1.0.jar successfully. Time spent: 5.188 sec.
    [2011-04-20T08:33:13.036-05:00] [soa_server1] [WARNING] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: epm_admin] [ecid: 1351f73362dee8bb:-13137bc6:12f727dea12:-8000-00000000000041fd,0] [APP: soa-infra] JMSAdapter JMSSampleProj JmsDDEndpoint_onFailure: Unable to resolve 'jms.ReceiveQueue'. Resolved 'jms'

    Hi,
    Try targetting it to soa_server1 instead of admin server.

  • Configuration for sync/async bridge in Jms adapter

    Can someone give me a hint what I might be doing wrong?
    The scenario is: synchronous proxy to jms.
    Integration repository:
    Created synchronous outbound interface and synchronous inbound interface, message mapping, interface mapping.
    Integration directory:
    Created jms receiver communication channel and jms sender communication channel and configured them according "How to correlate jms messages".
    Created receiver determination, interface determination and receiver agreement.
    No sender agreement necessary for proxy sender.
    So far so good, but...
    Both the receiver and sender jms adapter have its own queue (the receiving system will get the request in one queue and put the response in another).
    <b>How does the waiting jms receiver adapter know where to expect the answer?</b>
    When I test this scenario the (outbound) message get the status "Log version" (abap moni) and "To be delivered" (java moni).
    PS:
    The testing is performed by using the tool rfhutil. With this tool you can read and write directly from/to the MQ queues where the jms adapters are pointing to.
    After receipt of the request in the queue of the reveicer jms communication channel, I manually put a message in the queue of the sender jms communication channel with the XI message ID filled in the correlation ID.

    More information, In the jms adapter the following error appears:
    XI inbound processing failed for message at time 2007-06-11|11:12:48.908+0100. JMS and XI identifiers for the message are ID:414d512052545849444556312020202045f55b6c20d73102 and 4e5bff20-1804-11dc-c2b4-00096b6ed15c respectively. The JMS adapter will rollback the database and JMS session transactions. If the session is transacted, the message is not lost and will be retried later. The exception stack trace is java.lang.Exception: Minimum address data not configured. Field InterfaceNamespace is empty.
         at com.sap.aii.af.service.jms.WorkerJMSReceiver.onMessage(WorkerJMSReceiver.java:1516)
         at com.ibm.mq.jms.MQMessageConsumer.receiveAsyncQ(MQMessageConsumer.java:2538)
         at com.ibm.mq.jms.MQMessageConsumer.receiveAsync(MQMessageConsumer.java:4260)

  • JMS adapter does not recover from error

    Hello everyone,
    We are noticing some strange behavior with the JMS adapter, and would like your help. We have messages coming into XI from WebSphere MQ. We have configured a Sender Comm channel (MQ_SENDER) with the appropriate JMS adapter, with a specified queue name (TEST.Q) . We have installed the appropriate MQ-JMS libraries for v6.0.
    Here's the problem scenario... initially the application sending the messages to the specified queue was putting an incorrectly formatted MQRFH2 structure in the message. Predictably, this caused our comm channel to fail, and it shows up on the adapter monitor in the failed state with the message "MQJMS1050: The MQRFH2 header has an incorrect format Code: MQJMS1050". This in itself is not a problem, we realized that the application was sending a malformed message. The problem occurs when we fixed the sending application to completely strip out the MQRFH2 header altogether. When the new message is sent, the comm channel seems "stuck" on the previous error, and does not even pick up the new message from the queue. The adapter monitor continues to show the same error for the comm channel. Now when we modified the comm channel to read from a DIFFERENT queue (TEST2.Q) , the comm channel got out of the error state and is able to successfully process new messages coming into that queue. However, when we revert the comm channel back to the original queue (TEST.Q) it reverts back to the original MQJMS1050 error, and does not pick up new messages on the queue.
    Any assistance would be greatly appreciated...

    Hi,
    1) Try to refresh the metadata
    2) Check the Queue status
    3) Once again check the Queue name. try to make the Sender JMS adapter inactive .save  it..again make it active  and  save it and  activate the object.
    4) Refresh the Cache :
    a)Start transaction SXI_CACHE.
    b)From the context menu XI Runtime Cache select Start Complete Cache Refresh.
    If you still face issue try this .
    Many actions require to access System Landscape Directory content from the Integration Builder. To optimize performance, this content is loaded into a cache so that the System Landscape Directory does not have to be accessed directly each time that System Landscape Directory content is required.
    However, this cache is not automatically updated if changes are made to the content of the System Landscape Directory. For this reason that we delete the System Landscape Directory cache if changes have been made to content in the System Landscape Directory. The cache is then filled each time that the System Landscape Directory is accessed. If we log on to the Integration Builder after we have made a change in the SLD, we do not need to delete the SLD cache.
    To clear the SLD cache, from the Integration Builder main menu, choose Environment ® Delete Cache for SLD Data.
    Once we have deleted the cache for SLD data, accessing objects in the SLD may take longer than usual initially.
    Regards
    Agasthuri Doss

  • Jms adapter is very slow

    hi all
    I've got two bpel processes deployed: one is writing message into a queue (created in 10g Oracle DB) using jms adapter, second one is supposed to read message from the queue. It seems to work very slowly, bpel part is executed fast (everything is deployed on fast linux server) but reading from a queue is a bottleneck. It takes rougly 1 second to read a single message from the queue !!!!
    I tried with and without connection pooling and I get the same results.
    I also tried to read from the same queue from a standalone java application: it takes 50-150ms to read one message after obtaining connection.
    My configuration:
    As 10.1.3.1
    adapter wsdl relevant part:
    <binding name="Consume_Message_binding" type="tns:Consume_Message_ptt">
    <pc:inbound_binding />
    <operation name="Consume_Message">
    <jca:operation
    ActivationSpec="oracle.tip.adapter.jms.inbound.JmsConsumeActivationSpec"
    DestinationName="java:comp/resource/ASDBResource/Queues/LSP_INPUT_Q_BRIDGE"
    UseMessageListener="false"
    PayloadType="BytesMessage"
    OpaqueSchema="true" >
    </jca:operation>
    </binding>
    <service name="InboundJMS">
    <port name="Consume_Message_pt" binding="tns:Consume_Message_binding">
    <jca:address location="eis/Jms/JMSDBConnection" UIConnectionName="JMSDBConnection"
    ManagedConnectionFactory="oracle.tip.adapter.jms.JmsManagedConnectionFactory"
    mcf.ConnectionFactoryLocation="java:comp/resource/ASDBResource/QueueConnectionFactories/QCF"
    mcf.IsTopic="false"
    mcf.IsTransacted="true"
    mcf.FactoryProperties=""
    UIJmsProvider="OJMS" />
    </port>
    </service>
    ASDBResource is configured in application.xml to point to a proper machine.
    When I set useMessageListener to "true" I get even worse performance.
    I found following text in adapters faq, maybe there is an option to change pooling interval ?
    <The JMS API supports both synchronous or asynchronous communication for <message consumption. In the
    <synchronous case, the consumer explicitly calls the receive() method on the <topic or queue. In the
    <asynchronous case, the JMS client registers a MessageListener for the topic or <queue and the message is
    <delivered by calling the listener’s onMessage() method. By default, the consumer <uses a polling method. The
    <Adapter design-time is used for overriding the default behavior and can be used to <configure a message listener
    <for receiving JMS messages in an asynchronous fashion.
    cheers
    Przemek

    If speed is of essence, have you considered using the AQ adapter instead ? That should be faster when compared to the jms route, assuming you are going against Oracle AQs.

  • Is there a Size Limit for JMS Adapter ?

    Hi ,
    Is there any size limit for JMS Adapter ??
    Regards,
    Sam

    I'm not sure about the adapter, but documentation for weblogic available at http://download.oracle.com/docs/cd/E13222_01/wls/docs92/perform/jmstuning.html#wp1150012
    Manoj

  • JMS adapter insufficient

    Hi,
    I'm implementing a connection from MQ to SAP, through XI.
    The simple things work, but I do have some problems with the more complex scenario's.
    I think the JMS-adapter isn't sufficient enough for my implementation :
         - performance : a load off messages takes ages => multithreading ?
         - multiple IDoc types:
              I have 4 IDoc types that should be processed in the right order.  If one adapter could read them all, the order would be right,
              but the adapter can't read different sorts of IDocs so I had to split them over 4 queues, in which case the order becomes a problem.
         - when there is a connection problem (network drop or so), the JMS adapter doesn't recover.
    My question is :
         should I go for a java proxy to get the messages from the queue and into XI (in effect write my own JMS-code) ?
         If so, since I've never created a proxy, does anyone have some sample code with an MQ-connection ?
    Regards
    T

    Hi Tom,
    I don't have specific code for proxy.  However, I will explain the steps:-
    ABAP proxies are created in SPROXY transaction.  This is executed on the Application System (not the integration server).  As part of the config of the WAS, an HTTP destination to the IS is maintained in SM59.  This allows the Appl system to retrieve the WSDL desc of the interface as the basis of proxy generation. 
    Use SPROXY transaction on the application system. Right click on your relevant interface and choose Create.  Enter the Prefix and Package to generate unique names.  The system generates methods --> EXECUTE_SYNCHRONOUS and EXECUTE_ASYNCHRONOUS based on the interfaces.  Once you are done with this you can apply your code.
    To generate proxies for java applications, right click on the interface in the IR and choose Java Proxy Generation.  The wizard will get started.  Specify if this is a new proxy or a regenerated proxy (if the interface is changed after a proxy has been generated, you must regenerate and recompile).  Select the software comp version that contains the interfaces.  Select the message interface to use as the basis of proxy generation.  Click Finish to generate the java classes.
    Regards.
    Praveen

  • The message sequence of JMS adapter and BPM

    This is my scenario: AP1 -> MQ -> JMS Adapter -> XI BPM -> SAP
    But if AP1 sends 10 messages to MQ server, how to make sure the received message sequence of SAP is the same as AP1 ?
    Because JMS adapter doesn't have synchronous ability, or I can set best effort to make sure the sequence.

    HI,
    See the below links to solve the BPM performance problems
    BPM Performance tuning
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/70ada5ef-0201-0010-1f8b-c935e444b0ad
    BPM performance question
    SAP XI BPM Performance and statistics
    Performance problem on BPM
    BPM pros and cons
    Performance problems using BPM
    Regards
    Chilla..

  • JMS Adapter enqueue - batch commits

    Hi,
    I was looking at the SOA Best Practices 10.1.3.3 and while it talks about improving performance for enqueue operation it talks about batching commits (pg 9-9). I could not find the property on the JMS adapter that can Batch the commits of enqueue. I would appreciate if somebody could point me to the property for setting batch commits on JMS Adapter for enqueue operation.
    Regards,
    Mahesh.

    Hi,
    I was looking at the SOA Best Practices 10.1.3.3 and while it talks about improving performance for enqueue operation it talks about batching commits (pg 9-9). I could not find the property on the JMS adapter that can Batch the commits of enqueue. I would appreciate if somebody could point me to the property for setting batch commits on JMS Adapter for enqueue operation.
    Regards,
    Mahesh.

  • Configuring message redelivery with jmcjca (sun-jms-adapter) in Glassfish

    I use Glassfish v2 server and its OpenMQ as JMS Provider.
    My MDB is configured to use sun-jms-adapter for accessing JMS Provider.
    ra.xml of adapter wasn't change so all configuration is done through the sun-ejb-jar.xml of my MDB.
    Type of destination my MDB listens to is javax.jms.Topic.
    At the same time, I have defined the following redelivery strategy in the sun-ejb-jar.xml
    <activation-config-property>
    <activation-config-property-name>RedeliveryHandling</activation-config-property-name>
    <activation-config-property-value>2:1000; 3:move(queue:*psdmqqueue*)</activation-config-property-value>
    </activation-config-property>
    psdmqqueue is an administred server Destination of type javax.jms.Queue. So a target destination of MDB is topic and redelivery should be performed to queue
    The problem is that application deplyment failes with this configuration with the following exception:
    #|2008-11-22T18:38:48.152+0300|WARNING|sun-appserver9.1|com.stc.jmsjca.core.Activation|_ThreadID=169;_ThreadName=JMSJCA connect;_RequestID=ed86af75-1577-4548-ac57-60ca127a28a2;|JMSJCA-E016: [sync-Durable TopicSubscriber(provisioning_subscription)(lookup://targetTopic) @ [mq://localhost:7676/jms]]: message delivery initiation failed (attempt #85); will retry in 10 seconds. The error was: java.lang.ClassCastException: com.sun.messaging.jmq.jmsclient.XATopicSessionImpl
    java.lang.ClassCastException: com.sun.messaging.jmq.jmsclient.XATopicSessionImpl
    at com.stc.jmsjca.core.RAJMSObjectFactory.createDestination(RAJMSObjectFactory.java:423)
    at com.stc.jmsjca.core.Delivery.createDLQDest(Delivery.java:626)
    at com.stc.jmsjca.core.SyncDelivery.start(SyncDelivery.java:204)
    at com.stc.jmsjca.core.Activation.asyncStart(Activation.java:535)
    at com.stc.jmsjca.core.Activation.access$000(Activation.java:80)
    at com.stc.jmsjca.core.Activation$1.run(Activation.java:343)
    at java.lang.Thread.run(Thread.java:595)
    Could you please help me to figure out what is wrong with my configuration?
    Part of sun-ejb-jar.xml related to ra activation spec:
    <mdb-resource-adapter>
    <resource-adapter-mid>sun-jms-adapter</resource-adapter-mid>
    <activation-config>
    <activation-config-property>
    <activation-config-property-name>ConnectionURL</activation-config-property-name>
    <activation-config-property-value>lookup://targetConnFactory</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>Destination</activation-config-property-name>
    <activation-config-property-value>lookup://targetTopic</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>DestinationType</activation-config-property-name>
    <activation-config-property-value>javax.jms.Topic</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>RedeliveryHandling</activation-config-property-name>
    <activation-config-property-value>2:1000; 3:move(queue:psdmqqueue)</activation-config-property-value>
    </activation-config-property>
    <!--subscription properties-->
    </activation-config>
    </mdb-resource-adapter>
    </ejb>
    </enterprise-beans>
    </sun-ejb-jar>

    Hi Alexej,
    I looked at the problem and found out what the issue is. We recently added some functionality that will test if the dead letter destination is in fact a valid destination -- we thought it's better to find that out upfront, rather than if an error occurs. This is especially important with dead letter destinations being looked up in JNDI: mistakes are easily be made there.
    In any case, this new functionality introduced a problem where messages are sent from a queue, and the dead letter destination is a topic, or vice versa, where messages are received from a topic, and the dead letter destination is a queue.
    In case you're wondering why: we still need to support JMS 1.0.2 servers. For these servers, the queues and topics are strictly segregated. We do have automated tests that test functionality across domains, but as it turns out, these tests also test some other functionality at the same time that fool the dead-letter-destination-validation into thinking it is the same messaging domain.
    In any case, I've have created a fix for this, and I'm testing it right now.
    I'll send you an updated RAR by email in case you don't want to wait until the updated bits are available for download. What you also could do, as a workaround, is doing the same trick that fooled the automated test: you can specify the redelivery handling in the MDB code, e.g.
    public void onMessage(Message message) {
    message.setStringProperty("JMS_Sun_JMSJCA_RedeliveryHandling", "2:1000; 3:move(queue:*psdmqqueue*)");
    // do stuff
    HTH, Frank Kieviet

  • Having multiple service operations in a single JMS adapter best practice

    Hi All,
    I am using JDeveloper and SOA Suite 11.1.1.6. I need to read from multiple JMS Topics and transform and enhance the messages through the Mediator and then persist into Database.
    My question is
    What is the best practice to consume from multiple topics, Should I configure separate JMS adapter for each of the Topic destination
    OR
    have a single JMS adapter with multiple operations by manually changing the JMS adapter wsdl and jca file?
    I find cannot have
    Please suggest.
    Thanks in advance
    Edited by: user5108636 on 15/05/2013 11:36

    Hi Vijay,
    did you actually test this? When I finish creating a DBAdapter, there is a operation present. Then when I click edit again on the DBAdapter, and I create another select, when I finish only the first operation is gone, and I can only see the one I've created via the last edit.
    I dont understand your reply. Can I have two operations, each one with select underneath, in the same adapter?
    Edited by: user13604541 on Jan 30, 2012 11:19 AM

  • Calling Foreign JMS in SOA Suite 11g JMS Adapter

    Hi,
    Just want to get some guidance in the implementation of Foreign JMS in WebLogic 10.3.
    I followed the creation of the Foreign JMS Server using this document:
    http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e13952/taskhelp/jms_modules/foreign_servers/CreateForeignServers.html
    I am trying to connect to a remote Weblogic 10.3 JMS queue but cannot get pass the JDev wizard stage.
    I need to call the foreign JMS via the Fusion 11g JMS Adapter but cannot lookup the destination from the JDev wizard. My composite will produce a message that will end up in the remote queue.
    Has anybody got this to work? Is this supported in JMS Adapter? I've read quite a few using MDB to call the Foreign JMS but not JMS Adapter.
    Regards,
    Robert

    Please refer to the following document that shows how to access remote wls jms queues and topics. This is the preferred way when accessing remote wls destinations.
    http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10231/adptr_jms.htm#BABJACJA
    Thanks
    Aman

  • Invoking Jms Adapter from BPEL with enque stoped

    Hi guys, I have an issue.
    In my BPEL flowI have an invoke activity which has a jms adapter as a partner link.
    The thing is that if you stop the enque in the DB, your flow in BPEL continues like nothing happened. It just passes the payload to the jms adapter. From it's point of view is asynchronous , but I want to make sure that the payload is in the queue before I continue the flow.
    Any ideas?

    Hi Oracler,
    I don't understand what you mean by XML schema inline? Where do you define that in a JMS adapter ? Can you be more specfic when you say Try including both the elements(TEXT_LOB , TEXT_VC ) in the schema? I don't have those elements in my schema at all. I have tried the opaque option I still get the same Translator NULL error.
    Please anyone help....

Maybe you are looking for

  • LCD display not working (blank screen)

    One day old 15" G4 (the latest model). No major changes to configuration; only basic software installed (Adium, Messenger, Firefox, Remote Desktop). The LCD display stopped working during normal operation (web browsing) and I assumed it was a power m

  • IDOC in status 03

    Hello, I am trying to send IDOC to a target system but the IDOC is struck in status 03.'IDoc sent to SAP system or external program'. How to push it further? Thanks, Rakesh.

  • Date: showing the current quarter

    Hi, I want a field where you can chosse the current quarter. Is this possible? Has it something to do with date format? date.short, medium, long,...? Thanks in advance for helping me! Matthias

  • Error when installing  'Oracle Service Registry' .

    D:\SOA\stage\ServiceRegistry>java -jar oracle-service-registry-10.1.3.1.jar Exception in thread "main" java.lang.UnsupportedClassVersionError: com/systinet/ uddi/tools/InstallTool (Unsupported major.minor version 48.0) at java.lang.ClassLoader.define

  • Adobe Captivate 4 - Flash Not Installed Error

    We are using Adobe Captivate 4 on Windows 7.  Since the Microsoft Windows Updates around January 8, we are unable to open Adobe Captivate 4.  We get the message that the Flash Player is to be installed and the application shuts down after the message