Aleksandr Polovtcev created IGNITE-15104: --------------------------------------------
Summary: Introduce a higher level messaging abstraction Key: IGNITE-15104 URL: https://issues.apache.org/jira/browse/IGNITE-15104 Project: Ignite Issue Type: Task Components: networking Affects Versions: 3.0.0-alpha3 Reporter: Aleksandr Polovtcev Assignee: Sergey Chugunov Current network messaging interface has two groups of methods: methods, that accept a {{NetworkAddress}} as the destination address, and methods, that accept a {{ClusterNode}} as the destination address. First group is mostly useful for low-level interactions (e.g. in JRaft), while the second group is used by more high-level API consumers. This makes the whole interface less consistent and more difficult to use, for example, message listeners only provide the {{NetworkAddress}} of the sender, which is inconvenient for high-level components. It is proposed to split this interface into two (actual naming is not final and can be changed during further discussions): # {{NetworkMessageService}} - for low-level interactions. It should accept a {{NetworkAddress}} as the recipient address and must be decoupled from the {{TopologyService}}. # {{ClusterMessageService}} - for high-level interactions. It should accept a {{ClusterNode}} as the recipient address and can be implemented as a composition of the {{NetworkMessageService}} and {{TopologyService}} . -- This message was sent by Atlassian Jira (v8.3.4#803005)