You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladimir Ozerov (JIRA)" <ji...@apache.org> on 2015/10/27 12:01:28 UTC

[jira] [Updated] (IGNITE-1643) Cleanup platform communication protocol.

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

Vladimir Ozerov updated IGNITE-1643:
------------------------------------
    Fix Version/s:     (was: 1.5)
                   1.6

> Cleanup platform communication protocol.
> ----------------------------------------
>
>                 Key: IGNITE-1643
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1643
>             Project: Ignite
>          Issue Type: Task
>          Components: interop
>    Affects Versions: ignite-1.4
>            Reporter: Vladimir Ozerov
>            Priority: Blocker
>             Fix For: 1.6
>
>
> At the moment we have lots of .Net-specific objects travelling over a wire. E.g., user's .Net job is wrapped in some holder, then serialized and passed to Java, then Java pass this object over wire, etc..
> This approach have two drawbacks:
> 1) Adds unnecessary overhead on wrapping.
> 2) Java have no chance to understand what it is passing. 
> If we unwrap all .Net objects and pass them to Java as is, we can achieve slightly better performance. But what is *much more* important - we will be able to unleash possibilities for very cool transparent interoperability between platforms. E.g., .Net will be able to execute Java services, Java node will be able to execute .Net/CPP jobs if it has matching portable class implemented, etc..
> Alternatively we can leave wrappers as is, but implement them in Java/CPP as well. This is not very good idea because of performance overhead.
> The feature *must be implemented in 1.5* because now we are free to change protocol as we want.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)