meshy
is a java library for creating clustered services over
multiplexed tcp connections. Netty is used to
handle all the gritty networking bits and UDP broadcast for service
discovery.
Services are typically hierarchical -- think file systems or URLs -- and file services and RPC are the two most common use cases.
Nodes form a mesh once they have discovered the local network topology. Each mesh node is capable of handling any request that the mesh can handle by proxying to an appropriate node.
A typical use case is for each physical node to have one mesh node, and for local processes to talk to their local mesh node. Multiple meshes can be overlayed on the same physical hosts by using unique ports or "secret" keys.
meshy
uses Apache Maven which it is beyond
the scope to detail. The super simple quick start is:
mvn test
<dependency>
<groupId>com.addthis</groupId>
<artifactId>meshy</artifactId>
<version>latest-and-greatest</version>
</dependency>
You can either install locally, or releases will eventually make their way to maven central.
It's x.y.z where:
- x: something major happened
- y: next release
- z: bug fix only
meshy is released under the Apache License Version 2.0. See Apache or the LICENSE for details.