Skip to content

Conversation

jogme
Copy link
Contributor

@jogme jogme commented Oct 15, 2025

Adding as a proxy - a middle actor.
Currently adding only for apache.

Support all the encryption modes for haproxy:

  • client to proxy
  • proxy to server
  • client to server
  • pure http without encryption

Currently adding it only for openssl-master crypto backend.

Adding as a proxy - a middle actor.
Currently adding only for apache.

Support all the encryption modes for haproxy:
- client to proxy
- proxy to server
- client to server
- pure http without encryption

Currently adding it only for openssl-master crypto backend.

Signed-off-by: Norbert Pocs <[email protected]>
@jogme jogme closed this Oct 15, 2025
@jogme jogme reopened this Oct 15, 2025
@jogme
Copy link
Contributor Author

jogme commented Oct 15, 2025

Adding the benchmark results with 10s time for siege. The graph is unreadable, but I don't intend to fix that with this PR.
After boringssl: haproxy-both, haproxy-client, haproxy-no-ssl, haproxy-server, libressl-4.1.0

transactions transaction_rate throughput response_time data_transferred concurrency

@jogme jogme linked an issue Oct 15, 2025 that may be closed by this pull request
@jogme jogme requested a review from Sashan October 15, 2025 13:52
${RESULT_DIR}/httpd-ssl-${SSL_LIB}.conf

if [[ "${HAPROXY}" = "server" ]] || [[ "${HAPROXY}" = "both" ]] ; then
conf_siege_haproxy_cert
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to call this twice within this function?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the other one should be an unconf. Thanks!

Also this could modify the non-haproxy tests and therefore the lines are pretty high. I won't spam here with another round of graphs, but here is data transferred with the changes:
data_transferred

for OPTION in ${HAPROXY_OPTIONS}
do
run_test openssl-master ${OPTION}
done

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason to have the same loop twice?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3x actually. This can be refactored, but I'd keep it in a separate PR.

The reason is that apache has 3 modes to operate: event, worker and prefork.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add HAPROXY to tool set

3 participants