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