quantranhong1999 commented on PR #2028:
URL: https://github.com/apache/james-project/pull/2028#issuecomment-1968540260

   Hi,
   
   I want to share the performance test and metrics results for this POC.
   
   ## Performance test
   Perf test result generally is good as it is a bit better than 0.8.2. No 
related error logs.
   
   ### IMAP
   ![Screenshot from 2024-02-26 
15-40-19](https://github.com/apache/james-project/assets/55171818/0322c85c-1202-4073-ad3d-ce8bba9c7438)
   
   The **SELECT** command (which uses `eventBus.register`) has better perf on 
Redis POC than RabbitMQ one (from TMail 0.8.2 release): p99 911ms compared to 
1590ms.
   
   ## JMAP
   ![Screenshot from 2024-02-26 
16-19-14](https://github.com/apache/james-project/assets/55171818/6bf0a858-fda3-4b94-85d1-58be57261b49)
   
   ## Event bus key metrics
   
   Redis metrics generally outperform RabbitMQ. 
   
   ### Redis POC
   ```
       # HELP redis_register Generated from Dropwizard metric import 
(metric=redis-register, type=com.codahale.metrics.Timer)
       # TYPE redis_register summary
       redis_register{quantile="0.5",} 9.29791E-4
       redis_register{quantile="0.75",} 0.0013598710000000001
       redis_register{quantile="0.95",} 0.0033751030000000004
       redis_register{quantile="0.98",} 0.005308415
       redis_register{quantile="0.99",} 0.0077004790000000005
       redis_register{quantile="0.999",} 0.044564479000000004
       redis_register_count 21670.0
   ```
   => p99 7ms for registering a key
   
   ```
       # HELP redis_dispatch Generated from Dropwizard metric import 
(metric=redis-dispatch, type=com.codahale.metrics.Timer)
       # TYPE redis_dispatch summary
       redis_dispatch{quantile="0.5",} 0.0016138230000000001
       redis_dispatch{quantile="0.75",} 0.002506751
       redis_dispatch{quantile="0.95",} 0.004849663000000001
       redis_dispatch{quantile="0.98",} 0.007143423
       redis_dispatch{quantile="0.99",} 0.009961471000000001
       redis_dispatch{quantile="0.999",} 0.045350911
       redis_dispatch_count 205453.0
   ```
    => p99 10ms for dispatching an event
   
   ```
       # HELP redis_unregister Generated from Dropwizard metric import 
(metric=redis-unregister, type=com.codahale.metrics.Timer)
       # TYPE rabbit_unregister summary
       redis_unregister{quantile="0.5",} 0.001040383
       redis_unregister{quantile="0.75",} 0.0017121270000000001
       redis_unregister{quantile="0.95",} 0.025296895000000003
       redis_unregister{quantile="0.98",} 0.034865151000000004
       redis_unregister{quantile="0.99",} 0.05845811100000001
       redis_unregister{quantile="0.999",} 0.070254591
       redis_unregister_count 21670.0
   ```
    => p99 58ms for unregistering a key (a bit surprising as it is higher than 
2 above)
   
   ### RabbitMQ
   
   ```
   # HELP rabbit_register Generated from Dropwizard metric import 
(metric=rabbit-register, type=com.codahale.metrics.Timer)
   # TYPE rabbit_register summary
   rabbit_register{quantile="0.5",} 3.135E-6
   rabbit_register{quantile="0.75",} 0.027918335000000002
   rabbit_register{quantile="0.95",} 3.0198988790000003
   rabbit_register{quantile="0.98",} 6.677331967000001
   rabbit_register{quantile="0.99",} 9.328132095
   rabbit_register{quantile="0.999",} 13.623099391
   rabbit_register_count 18846.0
   ```
   
   => p99 9 seconds 0.0 for registering a key
   
   ```
   # HELP rabbit_dispatch Generated from Dropwizard metric import 
(metric=rabbit-dispatch, type=com.codahale.metrics.Timer)
   # TYPE rabbit_dispatch summary
   rabbit_dispatch{quantile="0.5",} 5.57055E-4
   rabbit_dispatch{quantile="0.75",} 7.98719E-4
   rabbit_dispatch{quantile="0.95",} 0.001941503
   rabbit_dispatch{quantile="0.98",} 0.0034078710000000003
   rabbit_dispatch{quantile="0.99",} 0.005931007
   rabbit_dispatch{quantile="0.999",} 6.5095598070000005
   rabbit_dispatch_count 174339.0
   ```
   
   => p99 5ms for dispatching an event
   
   ```
   # HELP rabbit_unregister Generated from Dropwizard metric import 
(metric=rabbit-unregister, type=com.codahale.metrics.Timer)
   # TYPE rabbit_unregister summary
   rabbit_unregister{quantile="0.5",} 0.11481907100000001
   rabbit_unregister{quantile="0.75",} 0.327155711
   rabbit_unregister{quantile="0.95",} 2.0384317430000003
   rabbit_unregister{quantile="0.98",} 4.177526783
   rabbit_unregister{quantile="0.99",} 10.737418239
   rabbit_unregister{quantile="0.999",} 25.904021503000003
   rabbit_unregister_count 1295.0
   ```
   
   => p99 10 seconds 0.0 for unregistering a key


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

Reply via email to