You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Benoit Tellier (Jira)" <se...@james.apache.org> on 2020/06/23 03:01:00 UTC
[jira] [Created] (JAMES-3263) GET /address/aliases/address/aliases
is slow (9s +)
Benoit Tellier created JAMES-3263:
-------------------------------------
Summary: GET /address/aliases/address/aliases is slow (9s +)
Key: JAMES-3263
URL: https://issues.apache.org/jira/browse/JAMES-3263
Project: James Server
Issue Type: Task
Reporter: Benoit Tellier
Attachments: Capture d’écran de 2020-06-23 09-24-17.png, Capture_d_écran_de_2020-06-23_09-21-12.png
Doing a slowtrace analysis for the webAdmin protocol on one of Linagora deployments:
{code:java}
Transaction type: Web
Transaction name: GET /address/aliases/address/aliases
Start: 2020-06-23 8:03:41.284 am (+07:00)
Duration: 9,639.2 milliseconds
Request http method: GET
Response code: 200
{code}
Listing all mappings, a common operation is slow.
Surprisingly, query executes really fast at the Cassandra levels, and some other processing seems to be taking time:
Capture_d_écran_de_2020-06-23_09-21-12.png demonstrate query timings and we can see Cassandra query takes less than 200 ms and the time is spent elsewhere.
Looking at the code, collection processing does a lot of immutable copies (MappingsImpl::build calls.
Better rewritting the reduce operation would certainly unlock a performance improvment.
The glowroot flame graph seems to correlate with this analysis (disclaimer: I had a look at it after doing this analysis)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org