envoyproxy/envoy

perf: consider allowing upstream connections to be shared by workers

Open

#8 702 ouverte le 21 oct. 2019

Voir sur GitHub
 (11 commentaires) (0 réactions) (0 assignés)C++ (5 373 forks)batch import
area/httparea/perfdesign proposalhelp wanted

Métriques du dépôt

Stars
 (27 997 stars)
Métriques de merge PR
 (Merge moyen 8j) (378 PRs mergées en 30 j)

Description

The full silo model works out well in many cases, but in some cases (especially low memory) it may be better to allow a connection pool to be shared across the workers. This would cut down on the number of connections used, have greater connection pool hit rate, etc. at the expense of increased synchronization when the workers need to access the connection pool.

I think this could be implemented somewhat cleanly by allowing for a connection pool implementation that is shared across workers and uses its own processing thread.

This has already come up in discussion with @HenryYYang WRT to redis and I think @antoniovicente had also brought this up.

I'm opening this issue up for discussion as well as potentially a full design proposal if there is interest.

Guide contributeur