[JBoss JIRA] Created: (JBMESSAGING-1132) Use blocking mode for callbacks with Remoting http transport
by Ron Sigal (JIRA)
Use blocking mode for callbacks with Remoting http transport
------------------------------------------------------------
Key: JBMESSAGING-1132
URL: http://jira.jboss.com/jira/browse/JBMESSAGING-1132
Project: JBoss Messaging
Issue Type: Task
Reporter: Ron Sigal
Assigned To: Tim Fox
Fix For: 2.0.0 Alpha
In response to JBREM-641 "re-implement the callback polling for http transport to reduce latency", an alternative way of handling callbacks was introduced in Remoting. In particular, instead of the client periodically polling for callbacks, in "blocking" mode, the request to download callbacks blocks on the server until either (1) a callback is available, or (2) the timeout period has expired. The advantage is reduced latency in retrieving callbacks. In fact, some JBM http transport stress tests which fail in "nonblocking" mode now pass in "blocking" mode.
1. The default mode is "nonblocking", so it is necessary to explicitly configure "blocking" mode. One way to do so is to add the appropriate parameter to the metadata map when installing the callback listener. E.g., add the following line to org.jboss.jms.client.remoting.JMSRemotingConnection.createCallbackMetadata():
if (reportPollingStatistics != null)
{
metadata.put(CallbackPoller.REPORT_STATISTICS, reportPollingStatistics);
}
metadata.put(ServerInvoker.BLOCKING_MODE, ServerInvoker.BLOCKING); // <<=== add this line
metadata.put(ServerInvoker.BLOCKING_TIMEOUT, "7777"); // optional: default is 5000 milliseconds
2. The line
<attribute name="callbackPollPeriod" isParam="true">102</attribute>
may be removed from remoting-http-service.xml, since it's no longer relevant.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 8 months
[JBoss JIRA] Created: (JBMESSAGING-1151) Guarantee ordering with a delayed redelivery (FIFO)
by Markus Lutum (JIRA)
Guarantee ordering with a delayed redelivery (FIFO)
---------------------------------------------------
Key: JBMESSAGING-1151
URL: http://jira.jboss.com/jira/browse/JBMESSAGING-1151
Project: JBoss Messaging
Issue Type: Feature Request
Affects Versions: 1.4.0.GA
Reporter: Markus Lutum
Assigned To: Tim Fox
Make it possible to configure JBM to guarantee ordering with a delayed redelivery means preserve ordering of messages to a Consumer also in case of NACK / rollback.
In other words, block any other messages that arrived in the intervening period being delivered.
Needed behaviour
A and B are in the Queue
delivered A (ok)
delivered B (NOK/Transaction roll back)
C comes in
delivered B again after 20 sec (NOK/Transaction roll back)
delivered B again after 20 sec (Now processing is OK- Commit)
delivered C
I have now 2 customers which need this behaviour so I can replace a buggy self written persistent queue package.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 8 months