Skip to content
This repository has been archived by the owner on Jul 7, 2020. It is now read-only.

addthis/meshy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

meshy

TCP multiplexing gearwheels

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.

Building

meshy uses Apache Maven which it is beyond the scope to detail. The super simple quick start is:

mvn test

Use

<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.

Administrative

Versioning

It's x.y.z where:

  • x: something major happened
  • y: next release
  • z: bug fix only

License

meshy is released under the Apache License Version 2.0. See Apache or the LICENSE for details.