Клиент, который просто прокидывает ваш обычный трафик, должен быть почти незаметен. Если он заметен, обычно виновата одна конкретная вещь, а не общая потребность в оптимизации. Поэтому прежде чем менять хоть одну настройку, измерьте. Настройка без базовой точки — это не настройка, а перестановка мебели в конфиге.

Сначала замер, потом решение, трогать ли что-то вообще

  • Windows: диспетчер задач, вкладка «Подробности». Ищите процесс ядра — обычно mihomo, иногда под именем клиента, иногда оба сразу, потому что интерфейс и ядро это разные процессы. Смотрите на CPU и объём памяти.
  • macOS: «Мониторинг системы», и кроме CPU загляните во вкладку «Энергия». Столбец воздействия на энергопотребление ближе к тому, что реально чувствует батарея.
  • Linux: top или htop с фильтром по имени процесса ядра; при запуске сервисом systemctl status тоже покажет память юнита.

Что считать нормой: когда трафика нет, CPU должен держаться около нуля и лишь изредка дёргаться. Память растёт вместе с числом узлов и открытых соединений, и что угодно от нескольких десятков до нескольких сотен мегабайт — обычное дело. Значение имеет динамика: оставьте машину на час без нагрузки, и если память всё ещё ползёт вверх — вот это находка. Одно большое число на скриншоте — нет.

Партнёрский материалОткуда взять ссылку на подписку?Партнёрский сервис даёт 1 ГБ высокоскоростного трафика Гонконга при регистрации — импорт в один клик.Получить быстрые серверы

Что действительно жжёт ресурсы, по порядку

  1. Автоматическая проверка задержки. Первое место с большим отрывом. Группа url-test с интервалом 60 секунд и сорока участниками — это сорок полноценных HTTP-запросов каждую минуту, каждый с установкой соединения и рукопожатием. Переведите на 300 или 600, и в повседневной работе разницы вы не заметите.
  2. Количество узлов. Подписка на тысячу записей заставляет отрисовку списков, проверки доступности и сопоставление на странице соединений работать в этом масштабе, тогда как реально вы пользуетесь десятком. Отсекайте лишнее через filter у провайдера или у группы политик.
  3. Уровень логов. Постоянная работа на debug стоит процессорного времени, непрерывно пишет на диск и раздувает файл журнала. В обычном режиме держите info или тише, поднимайте только на время разбора.
  4. Режим TUN. Он добавляет слой обработки пакетов поверх того, что делает системный прокси. На десктопе разница тонет в шуме, на телефоне ощущается. Возвращаться к системному прокси ради экономии стоит, только если весь трафик перехватывать вам изначально было не нужно.
  5. Накопление соединений. Список, который не чистили несколько дней, держит память, да и отрисовка нескольких тысяч строк не бесплатна. Чистите время от времени и не делайте эту страницу видом по умолчанию.
proxy-providers:
  my-sub:
    type: http
    interval: 86400
    health-check:
      enable: true
      interval: 600
      lazy: true
proxy-groups:
  - name: Auto
    type: url-test
    interval: 600
    lazy: true

В этом фрагменте есть ловушка, которую стоит назвать: interval встречается дважды. Свой есть у группы политик и свой у health-check провайдера. Если увеличить интервал в группе, а провайдер продолжит тихо проверять по собственному короткому расписанию, вы не сэкономили ничего. Смотрите оба места. lazy — забытая половина: с ним группа, через которую сейчас ничего не идёт, не проверяется вовсе, и все региональные группы, которые вы держите про запас, замолкают. Арифметика простая: сорок узлов с интервалом 60 секунд — 2400 проверочных запросов в час; с интервалом 600 — 240.

Телефон: батарея — отдельная бухгалтерия

Сначала примите одно. Приложение, которое пересылает ваш трафик, обязано жить в фоне, и эту часть оптимизировать нельзя. Хотеть, чтобы оно маршрутизировало, не работая, — это не вопрос конфигурации. Сократить можно объём работы, которую оно при этом выполняет.

  • Автоматические проверки. На телефоне это самая крупная статья. Выключите совсем или отодвиньте интервал за десять минут. Вы и близко не переключаете узлы так часто.
  • Автообновление подписки. Раз в сутки достаточно; некоторые клиенты приезжают с ежечасным.
  • Проксирование по приложениям — называется у всех по-разному и работает по-разному в зависимости от платформы. Пустите через прокси только те приложения, которым это нужно, а остальные напрямую: их трафик вообще не проходит через процесс. Самая честная экономия в списке.
  • IPv6. Если сеть им не пользуется, отключение соответствующего резолвинга убирает лишний запрос на каждый домен и пачку попыток соединения, которым всё равно некуда идти.

Решение, которое многие принимают, толком не прочитав: добавить клиент в список исключений из оптимизации батареи. Эта настройка существует, чтобы система перестала выгружать приложение, и плата за неё ровно в том, что приложение получает больше свободы работать в фоне. Это противоположность экономии. Вы покупаете стабильность соединения за батарею — часто это правильный обмен, просто знайте, что обмен именно такой.

Чтобы понять, во что он вам реально обходится, откройте системный экран расхода батареи и отсортируйте по приложениям. Человек уверен, что телефон сажает прокси-клиент, смотрит — а на первом месте экран, а клиент где-то седьмой. Оптимизация по ощущениям оптимизирует в основном настроение.

Десктоп: что точно не поможет

Автозапуск при входе, режим службы и всевозможные переключатели со словом «производительность» в названии улучшают удобство или решают вопрос с правами. Потребление ресурсов не снижает ни один из них. Установка вспомогательной службы не опускает загрузку CPU — она лишь избавляет TUN от запроса прав администратора при каждом старте. Хотите, чтобы машина работала прохладнее, — всё работающее перечислено выше.

Самая действенная экономия энергии — закрыть его, когда он не нужен. Вывод не блестящий, но правдивый: неработающий процесс не потребляет процессор, и никакая настройка с этим числом не сравнится. Ситуаций, где он действительно нужен круглосуточно, меньше, чем принято думать.