[FUG-BR] squid lento

Flavio Alexsandro Silva falexsandro em inbox.com
Segunda Agosto 27 16:05:19 BRT 2007


Marcio Antunes wrote:
> tambem ja que seja isso..o uso do diskd
> 
> Em 27/08/07, Márcio Luciano Donada<mdonada em auroraalimentos.com.br> escreveu:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Lutieri G. escreveu:
>>>> Qual é a saída do comando mount?
>>> # mount /dev/da0s1a on / (ufs, local) devfs on /dev (devfs, local)
>>> /dev/da0s1e on /tmp (ufs, local, soft-updates) /dev/da0s1f on /usr
>>> (ufs, local, soft-updates) /dev/da0s1d on /var (ufs, local,
>>> soft-updates) /dev/da0s2a on /cache (ufs, local) devfs on
>>> /var/chroot/named/dev (devfs, local)
>>>
>>>> Abraço,
>> Custumo fazer o seguinte:
>>
>> no squid.conf
>> cache_dir diskd /cache/0 4096 16 256 Q1=72 Q2=62
>> cache_dir diskd /cache/1 4096 16 256 Q1=72 Q2=62
>> cache_dir diskd /cache/2 4096 16 256 Q1=72 Q2=62
>> cache_dir diskd /cache/3 4096 16 256 Q1=72 Q2=62
>> cache_dir diskd /cache/4 4096 16 256 Q1=72 Q2=62
>> cache_dir diskd /cache/5 4096 16 256 Q1=72 Q2=62
>>
>> quando monto essa partição /cache, da seguinte forma:
>>
>> defaults,noexec,async,noatime,nodev,nosuid,
>>
>> seu problema deve-se, talvez, ao tamanho da partição, acho que com o
>> diskd, você irá ganhar em performance.
>>
>> Abraço,
>>
>>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.5 (MingW32)
>>
>> iD8DBQFG0wgtbjyCr4Ixg0wRApfeAJwKk/n9O/kOVIo1avueIlkdZjAZZgCfYhoz
>> Okes7RuHqWTE6TBV1+G+Wiw=
>> =PYFw
>> -----END PGP SIGNATURE-----
>>
>> -------------------------
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Pessoal!!

	De posse das informações sobre o hardware e ambiente de trabalho dele 
vow tentar fazer um tunne-up do servidor, quem puder contribuir será 
muito bem vindo... A um tempo atras tentei escrever um 'recipe' mas naum 
tive muito sucesso...
	Por favor contribuam!!!
	Considerações:
		- Checkout do src do kernel e build para 6-Stable!
	Hardware:
		- Quad Core Opteron 64 bits
		- 4 Gb de Ram
		- Discos SAS
	Ambiente:
		- Para acesso a 500 usuários simultaneos
	Servicos:
		- Squid
		- DNS (Cache) ?

	Configurações no Kernel:
		- Comentar options 	SCHED_4BSD		# 4BSD scheduler
		- Adicionar options 	SCHED_ULE		# ULE scheduler
		- Comentar options 	INET6			# IPv6 communications protocols
		- Incluir:
			options SYSVSHM #SYSV-style shared memory
			options SYSVMSG #SYSV-style message queues
			options SYSVSEM #SYSV-style semaphores
		- Incluir conf para SMP:
			options SMP			# Symmetric MultiProcessor Kernel
		- Incluir conf para HZ e Polling:
			options HZ=2000
			options DEVICE_POLLING # Soft intrrupt's
		- Incluir conf para I/O assincrono;
			options VFS_AIO
		- Incluir conf de shared memory e msg segments:
			#
			options MAXDSIZ=(4096UL*1024*1024) # Conf para 4Gb
			options MAXSSIZ=(256UL*1024*1024) #  E aqui vai pra 128
			options DFLDSIZ=(4096UL*1024*1024) # 4096 tb!

			##
			# Message Queues [Based on Squid FAQ]
			##
			option MSGMNB=262144 # Number of bytes in a queue
			option MSGMNI=128 # Need to be at least 2 times the number of 
cache_dir entries in the squid
			option MSGSSZ=256 # Size of the message segment in a queue
			option MSGTQL=16384 # Number of max queue identifiers versus 128 
messages per queue (is the high mark of performance of messages per queue)
			option MSGSEG=2048 # Number of messages segments
			#
			##

			##
			# Shared Memory [Based on Squid FAQ]
			##
			options SHMMNI=256 # The half of the message queues at least [1 for 
each cache_dir]
			options SHMALL=65536 #
			options SHMMAX=(128UL*1024*1024) #
			options SHMSEG=128
	
	Configurações no sistema:
		- Modificar o rc.conf para que suas placas de rede tenham algo 
parecido com:
			ifconfig_bge0_alias0="polling"
			# Onde bge0 seria sua placa de rede interna!
		- Modificar o arquivo sysctl.conf no /etc:
			kern.polling.idle_poll=1
			kern.polling.user_frac=25
		
	E para encerar no meu squid tenho configurado/sugiro:
		- Cache Dir
			cache_dir diskd /usr/local/squid/cache/cache1 5120 16 256 Q1=128 Q2=100
			cache_dir diskd /usr/local/squid/cache/cache2 5120 16 256 Q1=128 Q2=100
			
		- Sendo que utilizo como cache replacement:
			cache_replacement_policy heap LFUDA
		
		- E para memory replacement:
			memory_replacement_policy heap GDSF
		
		- Para memory in transit, usaria:
			cache_mem 1536 MB
			
		- Sugiro como Low and High mark memory swap:
			cache_swap_low 65
			cache_swap_high 80
		
		- Sugestao de configuracao de memoria:
			maximum_object_size 64 MB
			minimum_object_size 0 KB
			maximum_object_size_in_memory 2560 Kb
	
	Espero ter te ajudado Lutieri.
	Parte dessas configuracoes tirei de um servidor de um ISP que tah 
rodando FreeBSD 6-Stable com Squid 2.6.2 se naum me engano!
	E o hardware naum eh lah aquelas coisas:
		IBM x206M
		Pentium4 HT 3.2GHz
		512Mb de Ram [Deveria ter aumentado faz tempo!!!]
		80 Gb de HD (Sata II)
	Para efeito de comparacoes, coloquei a saida do mgr do squid em anexo e 
a conf do kernel sob o nome de Lutieri!

Abraços a todos,

-- 
Flávio Alexsandro Silva
"Unix is user friendly. It's just selective about who its friends are."
"Linux is for people who hate Windows.
BSD is for people who love UNIX."
-------------- Próxima Parte ----------
Um texto embutido e sem conjunto de caracteres especificado associado...
Nome: squid.info.venus
Url: http://www.fug.com.br/historico/html/freebsd/attachments/20070827/969244de/attachment-0002.ksh 
-------------- Próxima Parte ----------
Um texto embutido e sem conjunto de caracteres especificado associado...
Nome: Lutieri
Url: http://www.fug.com.br/historico/html/freebsd/attachments/20070827/969244de/attachment-0003.ksh 


Mais detalhes sobre a lista de discussão freebsd