Skip to content

Preetam/libab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libab

Circle CI License

libab is a C library (implemented in C++) to broadcast messages to a cluster of nodes. libab also provides powerful properties for broadcasted messages:

  1. Each successfully broadcasted message is guaranteed to be delivered to a majority of the nodes.
  2. Broadcasted messages are fully serialized through an elected leader.

Traffic is sent over TCP with transparent reconnections.

Encryption is also supported and is implemented using tweetnacl with a shared key (provided by the user).

Dependencies and Building

Linux, macOS, and FreeBSD are supported at the moment. Builds may succeed with other BSDs, but they have not been verified.

Requirements

All platforms

  • Submodules
    • git submodule update --init --recursive
  • CMake 3.0 or higher
  • A compiler that supports C++14

Continue to Building.

Building

cd build
cmake ..
make
sudo make install # Optional

License

BSD (see LICENSE)

About

Another broadcast library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages