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

Anton Kalashnikov commented on IGNITE-13013:
--------------------------------------------

[~dmagda], I think I agree that client-to-client connectivity is not soo useful 
in ignite. So I have another solution which looks pretty easy for 
implementation. We can add the possibility to set a communication port to 
-1(this means server socket shouldn't be open). And when the user sets this 
port to -1 we also set forceClientToServer to true. Also, we can add validation 
on establishing communication connection, and if we see that it is the 
client-to-client connection but the remote client doesn't support such 
connection we notify the user about it( exception is thrown) - as I understand 
this scenario mostly corresponds to the compute.

In conclusion, expected changes:
* Setting communication port to -1 is allowed
* If the communication port set to -1, forceClientToServer will set to true
* If the client tries to establish a connection with another client which port 
equal to -1, the exception will be thrown.

> Thick client must not open server sockets when used by serverless functions
> ---------------------------------------------------------------------------
>
>                 Key: IGNITE-13013
>                 URL: https://issues.apache.org/jira/browse/IGNITE-13013
>             Project: Ignite
>          Issue Type: Improvement
>          Components: networking
>    Affects Versions: 2.8
>            Reporter: Denis A. Magda
>            Priority: Critical
>             Fix For: 2.9
>
>
> A thick client fails to start if being used inside of a serverless function 
> such as AWS Lamda or Azure Functions. Cloud providers prohibit opening 
> network ports to accept connections on the function's end. In short, the 
> function can only connect to a remote address.
> To reproduce, you can follow this tutorial and swap the thin client (used in 
> the tutorial) with the thick one: 
> https://www.gridgain.com/docs/tutorials/serverless/azure_functions_tutorial
> The thick client needs to support a mode when the communication SPI doesn't 
> create a server socket if the client is used for serverless computing. This 
> improvement looks like an extra task of this initiative: 
> https://issues.apache.org/jira/browse/IGNITE-12438



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to