Mkl#288
Conversation
gabordozsa
left a comment
There was a problem hiding this comment.
Looks very good! I have only minor comments.
| strategy. This allows you to aggregate multiple backend services | ||
| behind a single service endpoint. | ||
|
|
||
| **Key idea:** The multi-key listener does not choose a remote IP |
There was a problem hiding this comment.
For me, this seems to suggest that regular listeners do choose remote IPs. But a regular listener behaves similarly in this regard: it doesn't choose a remote IP directly. It chooses among connectors that advertise the same routing key.
|
|
||
| The weighted strategy distributes traffic across multiple routing keys | ||
| in proportion to their assigned weights. Routing keys with higher | ||
| weights receive a larger share of the traffic. |
There was a problem hiding this comment.
Maybe it would be too much detail for this document, but the "share of traffic" usually refers to the number of bytes transferred. However, it is the number of TCP connections in the MKL context.
Another piece of - maybe too much - detail is that weighted strategy implements a probabilistic distribution, as opposed to the deterministic priority strategy.
| * priority - Uses the first routing key in list that is available for traffic. If the connector becomes unavailable, the listener matches with the next available routing key in list. | ||
| * weighted - Uses the routing keys in proportion to the assigned weights. For example, if `backend1` is assigned 25 and `backend2` is assigned 75, then only a quarter of the TCP connections are directed to `backend1`. | ||
|
|
||
| Multi-key listeners provide predictable traffic distribution from the client side and are **not influenced by link costs**. |
There was a problem hiding this comment.
Could be too much detail, but as I understand it link costs do not affect the routing key a connection is routed to. Normal link cost + least connected rules apply within that routing key same as a Listener.
| their default values. | ||
|
|
||
|
|
||
| - `observer`: Set the protocol observer used to generate |
There was a problem hiding this comment.
I don't think this setting is respected. We recently added this as a spec field: skupperproject/skupper#2464
This PR is large cos i regenerated refdog, so here are the rendered new bits: