https://github.com/overmighty/co_http_uring
C++20 HTTP/1.1 server library using coroutines and Linux's io_uring API.
https://github.com/overmighty/co_http_uring
coroutines cpp cpp20 http http-server io-uring linux
Last synced: 10 months ago
JSON representation
C++20 HTTP/1.1 server library using coroutines and Linux's io_uring API.
- Host: GitHub
- URL: https://github.com/overmighty/co_http_uring
- Owner: overmighty
- License: apache-2.0
- Created: 2022-09-19T19:17:19.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-10-06T18:02:30.000Z (over 3 years ago)
- Last Synced: 2025-04-16T01:12:35.598Z (10 months ago)
- Topics: coroutines, cpp, cpp20, http, http-server, io-uring, linux
- Language: C++
- Homepage:
- Size: 39.1 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# co_http_uring
> C++20 HTTP/1.1 server library using coroutines and Linux's io_uring API.
## Introduction
co_http_uring is a C++20 HTTP/1.1 library developed to experiment with
[coroutines](https://en.cppreference.com/w/cpp/language/coroutines) and Linux's
[io_uring API](https://unixism.net/loti/what_is_io_uring.html) through
[liburing](https://github.com/axboe/liburing).
## Getting Started
### Prerequisites
- Linux
- [CMake](https://cmake.org/) >= 3.23
- a C++20 compiler toolchain supported by CMake
- **libraries:**
- [{fmt}](https://fmt.dev/latest/index.html)
- [liburing](https://github.com/axboe/liburing)
- **test libraries:**
- [GoogleTest](https://github.com/google/googletest)
### Building
$ mkdir build
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON ..
$ cmake --build .
### Installation
# cmake --install .
## License
This software is licensed under the [Apache License, version 2.0](
./LICENSE.txt).