[ 
https://issues.apache.org/jira/browse/JAMES-3602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

René Cordier closed JAMES-3602.
-------------------------------
    Resolution: Done

> AmqpForwardAttributed was opening a connection per call
> -------------------------------------------------------
>
>                 Key: JAMES-3602
>                 URL: https://issues.apache.org/jira/browse/JAMES-3602
>             Project: James Server
>          Issue Type: Improvement
>          Components: Mailet Contributions, rabbitmq
>    Affects Versions: 3.6.0
>            Reporter: Benoit Tellier
>            Priority: Major
>             Fix For: 3.7.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> One connection and one channel is opened per processed emails. Connections 
> and channels are long lived objects, made to be reused.  Flamme graphs showed 
> that this AMQP mailet represents ~1% of CPU occupation with just about 30 
> mail/sec. Note that 92% of this time is used opening/closing 
> connections/channels.  Moving connection and channel initialisation at mailet 
> initialisation enables reuse and leads to dramatic enhancements of the 
> performances of that very mailet. Note that retries are in place in case 
> Rabbit is not up right at start - common with IE docker-compose.  The testing 
> strategy relying on mocks is brittle. Given that we have full-fledged 
> integration tests in place, we can get rid of these annoying mock-based 
> tests.  - Move AmqpForwardAttribute to a separated maven module  - 
> AmqpForwardAttribute should use backend-rabbitmq  It cares for us about 
> channel thread safety upon reuse, connection and channel reconfiguration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to