Skip to content

Investigate worker connection accept balance #4602

@mattklein123

Description

@mattklein123

See relevant envoy-dev thread: https://groups.google.com/forum/#!topic/envoy-dev/33QvlXyBinw

Some potential work here:

  • Performance profile different application loads against Envoy running on different numbers of cores.
  • Per worker CPU pinning.
  • Adding EPOLLEXCLUSIVE and EPOLLROUNDROBIN support to libevent and consume them in Envoy
  • Adding per worker stats for connection load, accept rate, etc.
  • Investigate Envoy built-in connection rebalance between workers (e.g., allow configurable slew between workers but if some worker gets too far from the highest loaded worker, send a new connection to the other worker).

Note that I've tried variants of ^ over the years and it's extremely difficult to beat the kernel at its own game while generically improving all workloads. With that said, this is a very interesting area to investigate albeit incredibly time consuming.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions