[infinispan-dev] Infinispan client/server architecture based on gRPC

Vittorio Rigamonti vrigamon at redhat.com
Mon May 28 09:15:31 EDT 2018


Hi Infinispan developers,

I'm working on a solution for developers who need to access Infinispan
services  through different programming languages.

The focus is not on developing a full featured client, but rather discover
the value and the limits of this approach.

- is it possible to automatically generate useful clients in different
languages?
- can that clients interoperate on the same cache with the same data types?

I came out with a small prototype that I would like to submit to you and on
which I would like to gather your impressions.

 You can found the project here [1]: is a gRPC-based client/server
architecture for Infinispan based on and EmbeddedCache, with very few
features exposed atm.

Currently the project is nothing more than a poc with the following
interesting features:

- client can be generated in all the grpc supported language: java, go, c++
examples are provided;
- the interface is full typed. No need for marshaller and clients build in
different language can cooperate on the same cache;

The second item is my preferred one beacuse it frees the developer from
data marshalling.

What do you think about?
Sounds interesting?
Can you see any flaw?

There's also a list of issues for the future [2], basically I would like to
investigate these questions:
How far this architecture can go?
Topology, events, queries... how many of the Infinispan features can be fit
in a grpc architecture?

Thank you
Vittorio

[1] https://github.com/rigazilla/ispn-grpc
[2] https://github.com/rigazilla/ispn-grpc/issues

-- 

Vittorio Rigamonti

Senior Software Engineer

Red Hat

<https://www.redhat.com>

Milan, Italy

vrigamon at redhat.com

irc: rigazilla
<https://red.ht/sig>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/infinispan-dev/attachments/20180528/9a19736e/attachment.html 


More information about the infinispan-dev mailing list