Forum Stats

  • 3,825,702 Users
  • 2,260,552 Discussions
  • 7,896,644 Comments

Discussions

polling frequency of AQ adapter

sab1312
sab1312 Member Posts: 100
Can we set the polling frequency for AQ adapter during Enqueue operation in 10g?

Regards
Ayush
anasazii

Answers

  • 687087
    687087 Member Posts: 230
    Hi Ayush,

    You generally poll a queue when you want to dequeue from it.

    To control the polling frequency on the AQAdapter for dequeuing, on the partner link, you can use the property:

    <property name="minimumDelayBetweenMessages">milliseconds</property>

    refer metalink note: https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&doctype=HOWTO&id=465747.1

    Regards,
    Shanmu.
  • sab1312
    sab1312 Member Posts: 100
    Thanks Shanmu
    I feel this property is used to control the speed at which the adapter posts messages to Oracle BPEL Process Manager.But my requirement is that AQ adapter delays in polling the queue which is in Apps database.

    Regards
    Ayush
  • sab1312
    sab1312 Member Posts: 100
    I found out that the property to delay the dequeing activity in a AQ is <property name="DequeueTimeOut">120</property>.

    Regards
    Ayush
    anasazii
  • Hari N
    Hari N Member Posts: 8
    We are facing a similar issue but a slightly different scenario. Following is the setup:
    - Oracle SOA Suite 11.1.1.3.
    - BPEL process (within a Composite App) using AQ Adapter reading messages from a AQ queue (corresponding to a subscription to a Business Event) in Oracle EBS.
    - Huge number of messages backed up in the queue: delay of between 10 secs to 1 min between consecutive dequeue logs noticed in the BPEL process.

    The 'DequeueTimeOut' parameter is explained as "It is the interval after which the dequeue() API will time out if no message is received on the inbound queue.".
    But what if there a lot of messages in the queue waiting to be processed? How can we increase the polling frequency so that messages are drained immediately, or is this the default behavior?

    Any response is appreciated.

    Thanks,
    - Hari Nadathur
    anasazii
  • 687626
    687626 Member Posts: 796 Gold Badge
    Your problem seems to be due to a slow consumer. If you want to parrelize the receive activity you can set the below endpoint property.

    7.2.8 Multiple Receiver Threads

    Oracle AQ Adapter supports an activation endpoint property, "adapter.aq.dequeue.threads". Setting this property is a preferred way to spawn multiple threads for the inbound message flow between the adapter and the Enterprise Information System (EIS). Earlier versions of the Oracle AQ Adapter relied on the activationInstances endpoint property, which was used by JCA Binding Component to initiate multiple endpoints.
    anasazii
  • Hari N
    Hari N Member Posts: 8
    Atheek1,
    Thanks for your quick response. I will try this and update on how it goes.

    - Hari
This discussion has been closed.