Upgraded the following library dependencies to address security vulnerabilities:
com.google.guava:guavaupgraded to 30.0-jre.
commons-io:commons-ioupgraded to 2.7.
org.springframework:spring-coreupgraded to 5.0.6.RELEASE.
Support Category: Select
Anypoint Connector for Anypoint MQ (Anypoint MQ Connector) enables you to add messaging access to Anypoint MQ queues and exchanges from Anypoint Studio applications.
Anypoint MQ Connector versions 2.x and 3.x work only with Mule 4 and Studio 7.
For the Anypoint MQ Connector for Mule 3 Release Notes, see Anypoint Connector for Anypoint MQ Release Notes for Mule 3.
August 11, 2021
October 2, 2019
Added message group ID support for FIFO queues. (MQ-1669)
Added support for Delay Queues and Delay Messages. (MQ-1594)
July 29, 2019
Version 3.0 includes an improved user experience and these new features:
All operations are nonblocking.
Subscriber source supports Mule Scheduler configurations natively.
Polling subscriber type supports throttling.
Java 11 is supported.
Circuit breaker configuration is simplified.
Subscriber source always uses long polling when fetching new messages.
This release fixes these issues:
Connection validation is ignored. (MQ-1521)
Avoid thread starvation on HTTP failures. (MQ-1522)
Change all payloads to IS instead of byte. (MQ-1394)
Consume operation should throw a TIMEOUT error when no message is present. (MQ-1280)
Avoid overlapping polls on Subscriber operation with fixed frequency. (MQ-1360)
December 14, 2018
Duplicated ACK when using IMMEDIATE mode. (MQ-1381)
Avoid overlapping polls on fixed-frequency subscriber. (MQ-1360)
Use long polling with maximum timeout in the fixed-frequency subscriber. (MQ-1359)
Add version information in User-Agent header. (MQ-1339)
November 2, 2018
Update reference docs for Subscriber parameters. (MQ-1340)
MQ Subscriber: Needs to shut down gracefully when stopped. (MQ-1338)
Anypoint MQ Connector does not remove expired messages from a preserved buffer. (MQ-1333)
Anypoint MQ Connector blocks all app I/O threads when invoked concurrently. (MQ-1324)
Anypoint MQ Connector prefetch limit is ignored. (MQ-1323)
The Subscriber picks up messages very slowly from a queue. (MQ-1322)
Messages are being read twice by Anypoint MQ Connector. (MQ-1320)
PollingTime is not used by the Subscriber. (MQ-1277)
Subscriber prefetch cannot be disabled. (MQ-1276)
September 19, 2018
Improves logger precision to avoid issues during transaction tracing.
Allows Subscriber prefetch to be disabled for predictability on API calls (see Known Issues).
Using prefetch can result in the loss of predictability of API calls. If prefetch is used, Anypoint MQ Connector aggressively tries to fetch messages, which results in increased API calls. If predictability and control on API requests is important, use the following steps to disable prefetch and strictly follow the polling time.
|Only disable prefetch if predictability on API calls is more important than performance. Maximum possible performance is only available when prefetch is enabled.|
To disable prefetch:
Access a new or existing connector configuration of the MQ Subscriber component.
Navigate to the Prefetch tab.
Specify a Fetch size of 0. This disables prefetch.
In the Studio General tab, specify a Polling time in milliseconds.
This time interval is strictly adhered to when making API calls. Polling time defaults to 10 seconds if an explicit configuration is not present.
If there are no messages in the queue, each poll that a subscriber makes waits for the duration of exactly half of the Polling time specified in the General tab. Polling time has a maximum value of 20000 milliseconds.
Note: Versions 2.0.2 - 2.0.3 were internal releases only without changes to the user interface or product usage.
November 17, 2017
Anypoint MQ Connector doesn’t support tracking.
Example with tracking:
<flow name="customers-all-get" tracking:enable-default-events="true"> <anypoint-mq:subscriber config-ref="Anypoint_MQ_Configuration" destination="testQueue" acknowledgementMode="AUTO"/> <tracking:transaction id="customers-all-get"/> </flow>
Example without tracking:
<flow name="customers-all-get"> <anypoint-mq:subscriber config-ref="Anypoint_MQ_Configuration" destination="testQueue" acknowledgementMode="AUTO"/> </flow>