Повільні запити Squid із переписувачем URL, що падає
Перевірте допоміжну програму перезапису URL, коли проксі приймає з'єднання, але запити зависають до передачі далі.
Якщо Squid приймає з'єднання, але довго надсилає запити далі, перевірте будь-який переписувач URL на цьому шляху. У Squid 5–7 url_rewrite_program задає зовнішню програму, до якої звертаються після первинних перевірок доступу. Вона може затримувати запит до того, як його отримає адресат.
- Прочитайте фактично застосовувану команду перезапису, включно з обгорткою та аргументами.
- Зіставте постраждалу транзакцію з діагностикою допоміжної програми. Повторювані виходи дочірніх процесів, некоректні відповіді та зростаюча черга — різні ознаки.
- Перевірте, чи не спричиняє збій один шаблон URL. Збережіть відредагований приклад таких вхідних даних замість зміни сторонніх налаштувань resolver.
Допоміжна програма має рядковий контракт запиту й відповіді. Текст прогресу обгортки в стандартному виводі може його порушити. Успішний запуск скрипта з правами адміністратора теж не відтворює вхідний потік, середовище чи права Squid. Цей шлях окремий від перевірки пароля.
Лише коли обмін запрацює, це варто вважати проблемою ємності. url_rewrite_children керує процесами й поведінкою черги, але більше дочірніх процесів не усуне падінь, спричинених вхідними даними. Опція паралельності вводить ідентифікатори каналів і вимагає допоміжної програми, що реалізує такий діалог.
Авторизоване порівняння без переписувача дає змогу виокремити його внесок. Якщо залишити його обійденим при перевантаженні, може змінитися маршрутизація або фільтрація, яку він забезпечує, тож це рішення політики. Порівняйте спостережуване очікування допоміжної програми з даними DNS і наступного з'єднання, перш ніж відносити всю затримку на мережеву латентність.