Connect external application to Ignite cluster via REST

classic Classic list List threaded Threaded
2 messages Options
Kishan Kishan
Reply | Threaded
Open this post in threaded view
|

Connect external application to Ignite cluster via REST

We have ignite cluster up with four nodes. This cluster is hydrated with data
into its cache. We want an external application to connect with cluster and
get all the data objects of particular cache from the cluster via REST.

I am thinking of following approaches:
1) Using ignite's service grid and deploy service into the grid, But I am
not able to figure out a way to consume that service via REST call.
2) Someone suggested to bring up the service using ignite's compute task
which can be invoked via REST call. The problem with approach is that the
compute task won't return set of objects to REST client.
3) Bringing up the Jetty web server using service deployed on service
grid(starting server in init method of service), and then make REST client
to connect with that web server.
4) Using thin clients provided by ignite(Problem with this is that client
will connect to only one cluster node, what if that node goes down)
5) Using REST APIs provided by ignite(As we want all the data objects of one
cache, we are thinking of using REST APIs which executes SQL query and
return output objects from cluster's cache)

Which approach will work and which is the best one?

Thanks in advance.




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
Denis Mekhanikov Denis Mekhanikov
Reply | Threaded
Open this post in threaded view
|

Re: Connect external application to Ignite cluster via REST

Kushan,

I would recommend using one of thin clients, since they have better performance comparing to REST.
They work over a binary protocol, while REST needs data to be serialized as strings.

Connectors for thin clients are enabled on all nodes by default, so you can any one to connect.
Find more in the documentation: https://apacheignite.readme.io/docs/thin-clients

Denis

пт, 14 июн. 2019 г. в 20:10, Kishan <[hidden email]>:
We have ignite cluster up with four nodes. This cluster is hydrated with data
into its cache. We want an external application to connect with cluster and
get all the data objects of particular cache from the cluster via REST.

I am thinking of following approaches:
1) Using ignite's service grid and deploy service into the grid, But I am
not able to figure out a way to consume that service via REST call.
2) Someone suggested to bring up the service using ignite's compute task
which can be invoked via REST call. The problem with approach is that the
compute task won't return set of objects to REST client.
3) Bringing up the Jetty web server using service deployed on service
grid(starting server in init method of service), and then make REST client
to connect with that web server.
4) Using thin clients provided by ignite(Problem with this is that client
will connect to only one cluster node, what if that node goes down)
5) Using REST APIs provided by ignite(As we want all the data objects of one
cache, we are thinking of using REST APIs which executes SQL query and
return output objects from cluster's cache)

Which approach will work and which is the best one?

Thanks in advance.




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/