You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Andrey Mashenkov (Jira)" <ji...@apache.org> on 2021/12/23 09:45:00 UTC
[jira] [Created] (IGNITE-16195) Optimize MessageProcessor selection for a message.
Andrey Mashenkov created IGNITE-16195:
-----------------------------------------
Summary: Optimize MessageProcessor selection for a message.
Key: IGNITE-16195
URL: https://issues.apache.org/jira/browse/IGNITE-16195
Project: Ignite
Issue Type: Improvement
Components: networking
Reporter: Andrey Mashenkov
For now, IgniteRpcServer registers processors (for Raft messages only) in a Map<String, RpcProcessor>, where key is a message class name.
On every received message we do a lookup into the map by the classname which may be less efficient as it could be. E.g. we could use a number (int or long) as a key.
NetworkMessage provides a unique groupType of int type.
Maybe could register a processor for a whole group and delegate all the messages for the group to the processor?
We can use groupType and messageType of number types for normal usage and switch to class names back (current behavior) for compatibility (e.g. rolling upgrade) purposes.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)