Awesome Open Source
Awesome Open Source

The Poseidon Server Framework

GNU nano for the win!


  1. Coroutines (fibers)
  2. Native TCP, TLS over TCP and UDP over either IPv4 or IPv6
  3. I/O multiplexing basing on epoll
  4. Configurable add-ons
  5. Asynchronous MySQL access (optional, WIP)
  6. Asynchronous MongoDB access (optional, WIP)

How to build


  1. GCC (>= 6)
  2. autoconf
  3. automake
  4. libtool
  5. OpenSSL (>= 1.1)
  6. cmake (only for building MySQL and MongoDB libraries)

Build and install MySQL and MongoDB client libraries

cd third/
cd ..

Build and install Asteria

git submodule update --init
cd asteria/
git checkout master
git pull
autoreconf -i
./configure --disable-static
make -j$(nproc)
cd ..

Build Poseidon

autoreconf -i
./configure --disable-static
make -j$(nproc)

Start Poseidon in build tree


Start Poseidon within GDB

./ gdb --args

Install Poseidon and create default configuration file

sudo cp /usr/local/etc/poseidon/main.template.conf  \

Start installed Poseidon

poseidon /usr/local/etc/poseidon


  1. C++14 is required by Asteria.
  2. Only Linux is supported.
  3. OpenSSL 1.1 is required.


BSD 3-Clause License

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
c-plus-plus (18,713
linux (2,502
http (928
server (536
websocket (475
coroutines (188
epoll (35
fibers (24