-
Notifications
You must be signed in to change notification settings - Fork 645
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jms per message destination #1181
Jms per message destination #1181
Commits on Sep 1, 2018
-
- introduced directed message types. - introduced toQueue, toTopic, to, and withoutDestination methods to switch between directed and regular messages. - remove parens of properties() member in JmsMessage. - added missing type annotations, removed unnecessary parens. - improved scaladocs of message types.
Configuration menu - View commit details
-
Copy full SHA for b41da8d - Browse repository at this point
Copy the full SHA b41da8dView commit details -
Implement flow with per-message destinations
- Divided JmsConnector trait into producer and consumer connector traits to simplify logic of each connector - Divided consumer and produce sessions for the same reason - Destination objects are cached in a memory-aware way - Added tests and documentation of new flow
Configuration menu - View commit details
-
Copy full SHA for a12f348 - Browse repository at this point
Copy the full SHA a12f348View commit details
Commits on Sep 2, 2018
-
Reduce synchronization overhead of destination cache
- As the producer is passed from one thread to the next only when the first one has completed its send() operation, it is sufficient to make writes visible across threads. No real synchronization is necessary. - Along the way, harmonized javax.jms imports in JmsConnector to consistently use the jmx. prefix.
Configuration menu - View commit details
-
Copy full SHA for 53bce20 - Browse repository at this point
Copy the full SHA 53bce20View commit details -
Configuration menu - View commit details
-
Copy full SHA for f10cdce - Browse repository at this point
Copy the full SHA f10cdceView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0467181 - Browse repository at this point
Copy the full SHA 0467181View commit details -
Configuration menu - View commit details
-
Copy full SHA for ec1260f - Browse repository at this point
Copy the full SHA ec1260fView commit details -
Parallelize Jms session creation
Session creation was asynchronous for consumers, but all sessions were created in one thread. Producer sessions were created synchronously. To reduce latency, session creation is fanned out to multiple threads.
Configuration menu - View commit details
-
Copy full SHA for 1c829ac - Browse repository at this point
Copy the full SHA 1c829acView commit details -
Configuration menu - View commit details
-
Copy full SHA for c6dfc84 - Browse repository at this point
Copy the full SHA c6dfc84View commit details
Commits on Sep 3, 2018
-
Simplify and explain async JmsProducer startup logic
- Added a comment to explain why the stage might pull when a new session is added - Removed unnecessary check from in.onPush: we know a producer is available, since we only pull if the producer pool is non-empty
Configuration menu - View commit details
-
Copy full SHA for 9f50733 - Browse repository at this point
Copy the full SHA 9f50733View commit details -
Simplify JmsMessage model and fallback to default destination
- Introduce optional Direction field on JmsMessage - Fallback to default destination if no direction is defined on message Fixes akka#1166
Configuration menu - View commit details
-
Copy full SHA for 467d102 - Browse repository at this point
Copy the full SHA 467d102View commit details
Commits on Sep 5, 2018
-
Improve PR according to review comments
- reduced flakiness of session initialization - aligned session creation between producer and consumer - made JmsSession sealed - simplified synchronization in SoftReferenceCache
Configuration menu - View commit details
-
Copy full SHA for bf30b5d - Browse repository at this point
Copy the full SHA bf30b5dView commit details
Commits on Sep 9, 2018
-
Remove synchronization on SoftReferenceCache
Provided a test in SoftReferenceCacheSpec giving some evidence (which of course is no proof) that synchronization is not needed for how the cache is intended to be used. SoftReferenceCache synchronization can piggyback on Akka's async callback synchronization guarantess that is ultimately relying on AtomicReference operations.
Configuration menu - View commit details
-
Copy full SHA for 050b3af - Browse repository at this point
Copy the full SHA 050b3afView commit details