You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Arthur Naseef (Jira)" <ji...@apache.org> on 2022/06/29 17:56:00 UTC
[jira] [Commented] (IGNITE-17274) Startup of large numbers of servers slowed by linear lookup in IgniteServiceProcessor
[ https://issues.apache.org/jira/browse/IGNITE-17274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17560608#comment-17560608 ]
Arthur Naseef commented on IGNITE-17274:
----------------------------------------
POC code used to test:
[https://github.com/opennms-forge/distributed-scheduling-poc/]
Performance Notes:
[https://github.com/opennms-forge/distributed-scheduling-poc/wiki/Ignite-Startup-Performance]
Pull request is imminent.
> Startup of large numbers of servers slowed by linear lookup in IgniteServiceProcessor
> -------------------------------------------------------------------------------------
>
> Key: IGNITE-17274
> URL: https://issues.apache.org/jira/browse/IGNITE-17274
> Project: Ignite
> Issue Type: Improvement
> Affects Versions: 2.13
> Reporter: Arthur Naseef
> Priority: Major
>
> Using a small POC, spinning up many servers is slow. In addition, the startup time appears to be exponential.
> Using timing measurements, found a linear lookup inside the IgniteServiceProcessor that is taking most of the time.
> Replacing that linear lookup with a Map lookup, and maintaining the map, significantly speeds up the process, and startup time is now linear with the number of services started.
> Note this was tested with 20K and 50K services on a 1-node ignite cluster. Timings against the stock 2.13.0 code come in at 30s for 20K and 250s for 50K services. Modifying the linear lookup to use a Map, the timing come in at 8s for 20K and 14s for 50K services.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)