Metaparticle is a standard library for cloud native development using containers and Kubernetes.
The Metaparticle sync is a library within Metaparticle for synchronization across multiple containers running on different machines.
Currently the library supports two synchronization primitives:
- Locks, for mutual exclusion of code between different containers on different machines.
- Leader Election, for reliably selecting a single leader from a group of candidates, and failing over if that leader fails.
Metaparticle sync is made up of two components:
- A re-usable container that can be deployed as a side-car to implement synchronization operators
- A collection of idiomatic client libraries that users can use in their applications to implement synchronization. Currently languages supported include:
Examples for locking and leader election for each of the supported languages can be found in their respective directories.
More technical details can be found in the overview.
There are many ways to contribute to Metaparticle
- Submit bugs and help us verify fixes as they are checked in.
- Review the source code changes.
- Engage with other Metaparticle users and developers on gitter.
- Join the #metaparticle discussion on Twitter.
- Contribute bug fixes.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.