The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Тормоза на squid"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Настройка Squid и других прокси серверов (Squid)
Изначальное сообщение [ Отслеживать ]

"Тормоза на squid"  +/
Сообщение от airstom (ok) on 15-Сен-15, 21:23 
Добрый вечер.
Возникла проблема с тормозами squid'а.
При более 400 одновременных соединений открытие страниц через squid становится медленным (начинает притормаживать), если пускать в обход squid'а - всё летает. Процессор почти не загружен и Память только на 3%.
Что делать? Куда дальше крутить настройки?

Выкладываю свой squid.conf:
tcp_outgoing_address ххх.ххх.ххх.ххх
http_port ххх.ххх.ххх.ххх:3128 transparent

acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8

acl localnet src 10.0.0.0/8    # RFC1918 possible internal network
acl to_localnet dst 10.0.0.0/8

acl direct dstdomain ххх
acl direct dstdomain ххх.ru
always_direct allow direct

acl SSL_ports port 443
acl Safe_ports port 80        # http
acl Safe_ports port 81        # http2
acl Safe_ports port 21        # ftp
acl Safe_ports port 443        # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210        # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_access allow localnet
http_access allow localhost
http_access deny all

positive_dns_ttl 2 minute
negative_dns_ttl 30 second
shutdown_lifetime 1 seconds
icp_port 0
dns_nameservers 127.0.0.1
dns_v4_first on

cache_mem 8 GB
maximum_object_size_in_memory 512 KB
memory_replacement_policy heap GDSF
cache_dir ufs /var/spool/squid 10000 16 256
maximum_object_size 512 KB

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern -i (/cgi-bin/|\?) 0    0%    0
refresh_pattern .        0    20%    4320
visible_hostname proxy

Заранее всем спасибо :-)

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Тормоза на squid"  +/
Сообщение от ipmanyak (??) on 16-Сен-15, 14:57 
> cache_dir ufs /var/spool/squid 10000 16 256

Вам не кажется, что дисковый кэш в 10 ГБ это многовато? Имхо ваш сквид занимается вводом-выводом диска вместо отдачи контента, то бишь чтением индексов кэша и самого кэша. Если у вас трафик прова безлимитный, то я бы советовал вообще отключить дисковый кэш. В свое давнее время анализировал эффективность дискового кэша, она была мизерной 3-6%.


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Тормоза на squid"  +/
Сообщение от airstom (ok) on 16-Сен-15, 15:49 
>> cache_dir ufs /var/spool/squid 10000 16 256
> Вам не кажется, что дисковый кэш в 10 ГБ это многовато? Имхо
> ваш сквид занимается вводом-выводом диска вместо отдачи контента, то бишь чтением
> индексов кэша и самого кэша. Если у вас трафик прова безлимитный,
> то я бы советовал вообще отключить дисковый кэш. В свое давнее
> время анализировал эффективность дискового кэша, она была мизерной 3-6%.

Пробовал, вот таким макаром:
cache_mem 8 GB
maximum_object_size_in_memory 512 KB
memory_replacement_policy heap GDSF
cache_dir ufs /var/spool/squid 10000 16 256
cache deny all
maximum_object_size 512 KB

Но результатов - никаких.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Тормоза на squid"  +/
Сообщение от Ano email on 16-Сен-15, 17:01 
>[оверквотинг удален]
>> то я бы советовал вообще отключить дисковый кэш. В свое давнее
>> время анализировал эффективность дискового кэша, она была мизерной 3-6%.
> Пробовал, вот таким макаром:
> cache_mem 8 GB
> maximum_object_size_in_memory 512 KB
> memory_replacement_policy heap GDSF
> cache_dir ufs /var/spool/squid 10000 16 256
> cache deny all
> maximum_object_size 512 KB
> Но результатов - никаких.

Попробуй строчку: cache_dir null /dev/null
за место этой: cache_dir ufs /var/spool/squid 10000 16 256

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Тормоза на squid"  +/
Сообщение от airstom (ok) on 16-Сен-15, 19:14 
> Попробуй строчку: cache_dir null /dev/null
> за место этой: cache_dir ufs /var/spool/squid 10000 16 256

Спасибо за идею, но я squid ставил с базового репозитория. То есть не пересобирал его.
На строку cache_dir null /dev/null ругается. Надо пересобирать squid.
:-)

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Тормоза на squid"  +/
Сообщение от ipmanyak (??) on 17-Сен-15, 07:04 
>> Попробуй строчку: cache_dir null /dev/null
>> за место этой: cache_dir ufs /var/spool/squid 10000 16 256
> Спасибо за идею, но я squid ставил с базового репозитория. То есть
> не пересобирал его.
> На строку cache_dir null /dev/null ругается. Надо пересобирать squid.
> :-)

попробуй сменить тип формата дискового кэша, ufs старый формат, почитай про другие форматы:
http://www.squid-cache.org/Doc/config/cache_dir/

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Тормоза на squid"  +/
Сообщение от ipmanyak (??) on 17-Сен-15, 07:09 
>> Попробуй строчку: cache_dir null /dev/null
>> за место этой: cache_dir ufs /var/spool/squid 10000 16 256
> Спасибо за идею, но я squid ставил с базового репозитория. То есть
> не пересобирал его.
> На строку cache_dir null /dev/null ругается. Надо пересобирать squid.
> :-)

What sort of things impact the performance of my Squid ?

Squid will start suffering if you run out of any of your server resources. There's a few things that frequently occur:

    You just plain run out of CPU. This is where all of your resources are low save your kernel and user CPU usage. This may be because you're still using poll() or select() for your network IO which just don't scale under modern loads.
    Some crappy hardware (such as slow IDE disks and really cheap network cards) aren't that great at shoveling data around and require a lot of hand-holding by the CPU. If you see your interrupt/IOWAIT times up then it might be due to your hardware choices. I've seen this sort of thing happen with desktop-grade hardware pretending to be a server - eg the Sun "Desktop" hardware running Linux and using SATA disks. Lots of disk IO == Lots of time spent in IOWAIT.
    Some hardware allows you to "tune" how much overhead it imposes on the system. Gigabit network cards are a good example of this. You trade off a few ms of latency versus a high interrupt load, but this doesn't matter on a server which is constantly handling packets. Take a look at your hardware documentation and see whats available.

    Linux servers spending a lot of time in IOWAIT can also be because you're overloading your disks with IO. See what your disk IO looks like in vmstat. You could look at moving to the aufs/diskd cache_dir if you're using UFS. COSS also can drastically drop IOWAIT times under heavy disk loads.

    You're swapping! This happens quite often when people wind up cache_mem and don't watch how much RAM Squid is actually using. Watch the output of "vmstat" and see how much free memory is available. If you see your server paging memory in and out of disk then you're in trouble. Either decrease cache_mem or add more physical RAM.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Тормоза на squid"  +/
Сообщение от ipmanyak (??) on 17-Сен-15, 07:19 
>> Попробуй строчку: cache_dir null /dev/null
>> за место этой: cache_dir ufs /var/spool/squid 10000 16 256
> Спасибо за идею, но я squid ставил с базового репозитория. То есть
> не пересобирал его.
> На строку cache_dir null /dev/null ругается. Надо пересобирать squid.
> :-)

поменяй формат кэша с ufs на aufs, надо ли после смены пересоздавать дисковый кэш не могу сказать, я бы  удалил старый кэш и создал заново.

ты написал, что отключал кэширование командой
cache deny all
а надо вроде бы вот так:
no_cache deny all

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

8. "Тормоза на squid"  +/
Сообщение от ipmanyak (??) on 17-Сен-15, 07:21 
>[оверквотинг удален]
>> не пересобирал его.
>> На строку cache_dir null /dev/null ругается. Надо пересобирать squid.
>> :-)
> поменяй формат кэша с ufs на aufs, надо ли после смены пересоздавать
> дисковый кэш не могу сказать, я бы  удалил старый кэш
> и создал заново.
> ты написал, что отключал кэширование командой
> cache deny all
> а надо вроде бы вот так:
> no_cache deny all

cache_store_log none -  это сделано ? по дефолту оно так должно быть

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру