[ https://issues.apache.org/jira/browse/QPID-8558?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17443629#comment-17443629 ]
ASF subversion and git services commented on QPID-8558: ------------------------------------------------------- Commit 28cbf3b2ba40e3a895c723b3af84b07810cf43c9 in qpid-broker-j's branch refs/heads/main from Marek Laca [ https://gitbox.apache.org/repos/asf?p=qpid-broker-j.git;h=28cbf3b ] QPID-8558: [Broker-J] Enhancement of sole connection enforcement policy evaluation (#106) > [Broker-J] Enhancement of sole connection enforcement policy evaluation > ----------------------------------------------------------------------- > > Key: QPID-8558 > URL: https://issues.apache.org/jira/browse/QPID-8558 > Project: Qpid > Issue Type: Improvement > Components: Broker-J > Reporter: Marek Laca > Priority: Minor > Labels: Broker, Java > > Java broker implements the sole connection enforcement policy extension of > the AMQP 1.0 protocol. The extension ensures that the remote container can > open only one active connection to the broker at the same time. > The implementation is ineffective. When a new connection is opened the > IO-thread transfer the check to the virtual host configuration thread. The > configuration thread iterates throw all registered connections and checks > their remote container id and the policy. This technique ensures exclusive > access to the collection of the connections and nothing can be added or > removed during the check. Hence, the configuration thread works as a master > thread and every IO-thread has to wait till it receives a permission to go. > The waiting time increases with the number of open connections. The > processing of the messages is degraded, even when the user does not utilize > the sole connection enforcement policy. > The policy can be implemented as a connection limiter and there is no need > for a global lock or the usage of configuration thread. The limiter can check > the connections from different remote containers in parallel. If user does > not utilize the sole connection enforcement policy then every connection will > have a unique container id and the processing of a new incoming connection > will not be block by another connections. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org