]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: stick-tables: defer adding updates to a tasklet
authorOlivier Houchard <ohouchard@haproxy.com>
Fri, 2 May 2025 11:46:54 +0000 (11:46 +0000)
committerWilly Tarreau <w@1wt.eu>
Fri, 2 May 2025 13:27:55 +0000 (15:27 +0200)
commit388539faa35cd11019d81619cce86ac34a554d33
tree263588953dd7bbc82964ccf8ae100749de2c4f87
parentb3ad7b6371e10cee4e0c23f80191e62d1da7415f
MEDIUM: stick-tables: defer adding updates to a tasklet

There is a lot of contention trying to add updates to the tree. So
instead of trying to add the updates to the tree right away, just add
them to a mt-list (with one mt-list per thread group, so that the
mt-list does not become the new point of contention that much), and
create a tasklet dedicated to adding updates to the tree, in batchs, to
avoid keeping the update lock for too long.
This helps getting stick tables perform better under heavy load.
include/haproxy/defaults.h
include/haproxy/stick_table-t.h
src/stick_table.c