Anton Kirilov b0146dfab6 H2O: Reduce the number of system calls executed for database access (#7918) 2 rokov pred
..
src b0146dfab6 H2O: Reduce the number of system calls executed for database access (#7918) 2 rokov pred
template 29ef2fd38e H2O: Add implementation 9 rokov pred
CMakeLists.txt eaef3b5039 H2O: Optimize the cached queries and the database tests (#7655) 3 rokov pred
README.md b0146dfab6 H2O: Reduce the number of system calls executed for database access (#7918) 2 rokov pred
benchmark_config.json 8638739872 H2O: Update the base image to Ubuntu 22.04 (#7375) 3 rokov pred
config.toml 9d18b6e21b make sure all have versus key (#6265) 4 rokov pred
h2o.dockerfile a5e607df80 H2O: Use 64 pipelined database queries per database connection (#7895) 2 rokov pred
h2o.sh a5e607df80 H2O: Use 64 pipelined database queries per database connection (#7895) 2 rokov pred

README.md

h2o

This is a framework implementation using the H2O HTTP server. It builds directly on top of libh2o instead of running the standalone server.

Requirements

CMake, H2O, libpq, mustache-c, numactl, OpenSSL, YAJL

Test implementations

The test implementations are located into the src/handlers directory - refer to the initialize_*_handler*() functions.

Performance tuning

If the test environment changes, it will probably be necessary to tune some of the framework settings in order to achieve the best performance possible. The most significant parameters are the maximum number of database connections per thread and the maximum number of pipelined database queries per database connection, which are controlled by the DB_CONN and the DB_PIPELINE variables respectively in the h2o.sh script.

Performance issues

Plaintext

libh2o performs at least one system call per pipelined response.

Contact

Anton Kirilov [email protected]