Перейти к содержанию

Load-balance

proxy-groups:
- name: "load-balance"
  type: load-balance
  proxies:
  - ss1
  - ss2
  - vmess1
  url: 'https://www.gstatic.com/generate_204'
  interval: 300
  #lazy: true
  #strategy: consistent-hashing # или round-robin
  # hash-key: in-user

Общие поля

См. Общие поля

strategy

Стратегии балансировки нагрузки

  • round-robin распределяет все запросы между разными прокси-узлами в группе стратегий.

  • consistent-hashing назначает запросы с одинаковым целевым адресом одному и тому же прокси-узлу в группе стратегий.

  • sticky-sessions: запросы с одинаковым исходным адресом и целевым адресом будут направляться к одному и тому же прокси-узлу в группе стратегий, срок действия кэша - 10 минут.

Note

Когда целевой адрес является доменом, используется сопоставление по домену верхнего уровня.

hash-key

Определяет, из чего хеширующая стратегия получает ключ. Действует только при strategy равном consistent-hashing или sticky-sessions

  • in-user использует имя аутентифицированного пользователя входящего подключения в качестве ключа (то же поле, что читают правила IN-USER). Оно не меняется вместе с целевым адресом, поэтому одна задача, охватывающая несколько доменов, не будет на полпути менять узел и выходной IP; запросы без аутентификации возвращаются к собственному ключу стратегии
  • Если не задано, поведение полностью совпадает с прежним

round-robin не выполняет хеширование, поэтому указание hash-key вызовет ошибку, а не будет проигнорировано

Этот параметр меняет только то, какое значение хешируется, а не то, как стратегия выбирает узел после получения хеша. Стратегии также различаются длительностью постоянства: у consistent-hashing оно бессрочное, а у sticky-sessions кэш истекает через 10 минут