jbertram opened a new pull request, #5087:
URL: https://github.com/apache/activemq-artemis/pull/5087
The `ManagementService` is used by the broker to register and unregister
components for management as well as send notifications. When the broker is
busy dealing with new sessions and auto-creating queues, addresses, etc. there
is a lot of contention.
To reduce synchronization and improve the service overall this commit does
the following:
- Remove `synchronized` from most methods. In most cases it's completely
unnecessary because the methods are already using a thread-safe data-structure
(e.g. `ConcurrentHashMap`) or more specific synchronization is already in place
(e.g. on `mbeanServer`).
- Adds new & clarifies existing logging.
- Synchronizes `start` & `stop` methods and adds gates via `started`.
- Simplifies the `sendNotification` method by synchronizing once rather
than twice and performing legitimacy checks sooner.
- Removing an unnecessary overload of the `registereQueue` method.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact