Beast is a cross-platform C++ library built on Boost.Asio and Boost, containing two modules implementing widely used network protocols. Beast.HTTP offers a universal model for describing, sending, and receiving HTTP messages while Beast.WebSocket provides a complete implementation of the WebSocket protocol. Their design achieves these goals:

Symmetry: Interfaces are role-agnostic; the same interfaces can be used to build clients, servers, or both.

Ease of Use: HTTP messages are modeled using simple, readily accessible objects. Functions and classes used to send and receive HTTP or WebSocket messages are designed to resemble Boost.Asio as closely as possible. Users familiar with Boost.Asio will be immediately comfortable using this library.

Flexibility: Interfaces do not mandate specific implementation strategies; important decisions such as buffer or thread management are left to users of the library.

Performance: The implementation performs competitively, making it a realistic choice for building high performance network servers.

Scalability: Development of network applications that scale to thousands of concurrent connections is possible with the implementation.

Basis for further abstraction: The interfaces facilitate the development of other libraries that provide higher levels of abstraction.

Code Quality Rank: L1
Programming language: C++
Tags: Concurrency     Networking    

Recently added Beast resources

Do you know of a usefull tutorial, book or news relevant to Beast?
Be the first to add one!

Beast Recommendations

There are no recommendations yet. Be the first to promote Beast!

Have you used Beast? Share your experience. Write a short recommendation and Beast, you and your project will be promoted on Awesome C++.
Recommend Beast

Beast alternatives and related libraries

Based on the "Networking" category

Do you think we are missing an alternative of Beast or a related project?

Add another 'Networking' Library