Hey guys!

Recently I've been looking into ALPN support [1] and studying RFC [2] as
well as JEP [3]. In short, the Application Layer Protocol Negotiation -
allows the server and the client to agree which protocol shall be used
after TLS handshake. It will be supported out of the box in JDK9. For JDK8
you need a special Jetty Java agent [4].

With ALPN we could build an Uber Client, which would be able to support
many protocols at the same time (REST, HTTP/2, Hot Rod). We should be able
to select the protocol during client initialization as well as renegotiate
existing connection. This could be very convenient for situations when
connecting to multiple Hot Rod servers and some of them are accessible
using Hot Rod (the same DC or the same Cloud tenant) and some connections
need to get through a firewall (HTTP/2, REST).

Of course implementing this requires major refactoring in the server
endpoint as well as in the client. Possibly this is something for
Infinispan 10 :)

WDYT?

Thanks
Sebastian

[1] https://issues.jboss.org/browse/ISPN-6899
[2] https://tools.ietf.org/html/rfc7301
[3] http://openjdk.java.net/jeps/244
[4] https://github.com/jetty-project/jetty-alpn
_______________________________________________
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to