[ 
https://issues.apache.org/jira/browse/IGNITE-3568?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16089634#comment-16089634
 ] 

Pavel Tupitsyn edited comment on IGNITE-3568 at 7/17/17 12:43 PM:
------------------------------------------------------------------

I think we need some kind of a universal inter-process communication protocol 
which will allow creating thin clients in any language. We should look at 
current JDBC and ODBC implementations and, for now, reuse connector logic 
(inherit {{SqlListenerMessageParser}}).

As for .NET, as soon as server nodes are started with {{Apache.Ignite.exe}}, we 
can provide all the features we have AND with the same API. The difference is 
that user will call {{Ignition.Start(new IgniteClientConfiguration(...))}}. 
Instead of current JNI approach we'll connect to a node via some IPC, and most 
of the code should remain as is.


was (Author: ptupitsyn):
I think we need some kind of a universal inter-process communication protocol 
which will allow creating thin clients in any language. We should look at 
current JDBC and ODBC implementations.

As for .NET, as soon as server nodes are started with {{Apache.Ignite.exe}}, we 
can provide all the features we have AND with the same API. The difference is 
that user will call {{Ignition.Start(new IgniteClientConfiguration(...))}}. 
Instead of current JNI approach we'll connect to a node via some IPC, and most 
of the code should remain as is.

> .NET: Start JVM externally
> --------------------------
>
>                 Key: IGNITE-3568
>                 URL: https://issues.apache.org/jira/browse/IGNITE-3568
>             Project: Ignite
>          Issue Type: New Feature
>          Components: platforms
>    Affects Versions: 1.6
>            Reporter: Vladimir Ozerov
>            Assignee: Pavel Tupitsyn
>            Priority: Minor
>              Labels: .net
>
> Currently we start JVM inside .NET process. This is not good for several 
> reasons:
> 1) Broken isolation - only one JVM can exist per process. This way it is 
> impossible to start two Ignite instances with different JVM options.
> 2) JVM startup is expensive, cluster connection is expensive, and process 
> must host both Java and .NET heaps. Should we have external JVM to connect 
> to, we would allow for truly thin clients, when dozens thin processes will be 
> able to work with the same client. We already see growing demand for this 
> feature,



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to