haproxy/doc/design-thoughts/backends-v0.txt

28 lines
1.2 KiB
Plaintext
Raw Normal View History

1 type g<>n<EFBFBD>rique "entit<69>", avec les attributs suivants :
- frontend *f
- l7switch *s
- backend *b
des types sp<73>cifiques sont simplement des entit<69>s avec certains
de ces champs remplis et pas forc<72>ment tous :
listen = f [s] b
frontend = f [s]
l7switch = s
backend = [s] b
Ensuite, les traitements sont <20>valu<6C>s dans l'ordre :
- listen -> s'il a des r<>gles de l7, on les <20>value, et potentiellement on branche vers d'autres listen, l7 ou back, ou on travaille avec le back local.
- frontend -> s'il a des r<>gles de l7, on les <20>value, et potentiellement on branche vers d'autres listen, l7 ou back
- l7switch -> on <20>value ses r<>gles, potentiellement on branche vers d'autres listen, l7 ou backends
- backend -> s'il a des r<>gles l7, on les <20>value (quitte <20> changer encore de backend) puis on traite.
Les requ<71>tes sont trait<69>es dans l'ordre des cha<68>nages f->s*->b, et les r<>ponses doivent <20>tre
trait<EFBFBD>es dans l'ordre inverse b->s*->f. Penser aux r<><72>critures de champs Host <20> l'aller et
Location en retour.
D'autre part, pr<70>voir des "profils" plut<75>t que des blocs de nouveaux param<61>tres par d<>faut.
Ca permettra d'avoir plein de jeux de param<61>tres par d<>faut <20> utiliser dans chacun de ces
types.