[ 
https://issues.apache.org/jira/browse/IGNITE-27722?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ilya Shishkov updated IGNITE-27722:
-----------------------------------
    Description: 
Initial optimization was introduced in IGNITE-3060 and was removed in: 
IGNITE-27652
Affect should be investigated.

*Problem:*
{{#sendMessageToClients}} broadcasts {{TcpDiscoveryAbstractMessage}} to all 
clients, i.e. it adds message to several {{ClientMessageWorker}} queues.
Currently, each {{ClientMessageWorker}} polls message from queue and serializes 
it into bytes before sending via socket, so each message will be serialized as 
many times as we have client nodes.
We should provide that message will be serialized only once, eg. hold 
serialized bytes somewhere or something else.

*Update:*
Take discussion into account: 
https://github.com/apache/ignite/pull/12663#discussion_r2757369831


  was:
Initial optimization was introduced in IGNITE-3060 and was removed in: 
IGNITE-27652
Affect should be investigated.

*Problem:*
{{#sendMessageToClients}} broadcasts {{TcpDiscoveryAbstractMessage}} to all 
clients, i.e. it adds message to several {{ClientMessageWorker}} queues.
Currently, each {{ClientMessageWorker}} polls message from queue and serializes 
it into bytes before sending via socket, so each message will be serialized as 
many times as we have client nodes.
We should provide that message will be serialized only once, eg. hold 
serialized bytes somewhere or something else.



> Investigate duplicated serialization in RingMessageWorker#sendMessageToClients
> ------------------------------------------------------------------------------
>
>                 Key: IGNITE-27722
>                 URL: https://issues.apache.org/jira/browse/IGNITE-27722
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Ilya Shishkov
>            Assignee: Ilya Shishkov
>            Priority: Major
>              Labels: IEP-132, ise
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Initial optimization was introduced in IGNITE-3060 and was removed in: 
> IGNITE-27652
> Affect should be investigated.
> *Problem:*
> {{#sendMessageToClients}} broadcasts {{TcpDiscoveryAbstractMessage}} to all 
> clients, i.e. it adds message to several {{ClientMessageWorker}} queues.
> Currently, each {{ClientMessageWorker}} polls message from queue and 
> serializes it into bytes before sending via socket, so each message will be 
> serialized as many times as we have client nodes.
> We should provide that message will be serialized only once, eg. hold 
> serialized bytes somewhere or something else.
> *Update:*
> Take discussion into account: 
> https://github.com/apache/ignite/pull/12663#discussion_r2757369831



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to