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/24 11:03:00 UTC

[jira] [Closed] (JAMES-3263) GET /address/aliases/address/aliases is slow (9s +)

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

Benoit Tellier closed JAMES-3263.
---------------------------------
    Resolution: Fixed

Related PR is merged

> 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
>          Components: RRT, webadmin
>            Reporter: Benoit Tellier
>            Priority: Major
>              Labels: perf
>             Fix For: 3.6.0
>
>         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)
> Capture d’écran de 2020-06-23 09-24-17.png shows 9 traces out of 10 relating to the above mentionned collect
> **Definition of done**
> x100 improvment for large collections on top of memory backend for local benchmarks



--
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