gemini-server/README.md

23 lines
1017 B
Markdown
Raw Normal View History

2021-01-24 21:11:12 +01:00
# A C++ Gemini server
## Introduction
As I saw other implementations in Rust but no C++ to compete, I felt that I had to do something ;-).
It is also a chance for me and a friend (Brumaire) to practice C++ and to try to get as much performance as possible (my speciality is HPC so… Yeah).
## Design
I use PlantUML to do the class diagram for the design. It's a work in progress.
## Goal
2021-01-24 22:47:21 +01:00
What we want is a high performance server using asynchrony at first, and then maybe multi-threading to have the maximum possible performance.
2021-01-24 21:11:12 +01:00
## Configuration
**WIP**
The configuration of the server is made through a JSON file `config.json`. The JSON parser is [simdjson](https://github.com/simdjson/simdjson) directly integrated
in our source code.
## Documentation
The doc of the code is made with [doxygen](https://www.doxygen.nl/), the `Doxyfile` is at the root of the repo.
2021-01-24 22:47:21 +01:00
## TODO/features
* Possibility of an applicative gateway (like CGI for example)
* Content in RAM cache
* Asynchronous (boost ASIO deals with it)