Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
HTML
<div id="main-content" class="wiki-content group">
	<p>&#160;</p>
	<h2 id="Monitoramentomemcached-Ferramenta">Herramienta</h2>
	<p>Existen diversas herramientas de monitoreo de memcached
		disponibles en el mercado, como el phpMemcachedAdmin, el memcache-top,
		el statsproxy, además del propio console del memcahced accedido por
		telnet.&#160;Utilizaremos&#160;phpMemcachedAdmin como herramienta de
		monitoreo, este posee una interfaz web simple y fácil de utilizar,
		también enumeraremos algunos puntos que se deben monitorear y
		soluciones de problemas.</p>
	<h2 id="Monitoramentomemcached-GuiadeinstalaçãodophpMemcachedAdmin">Guía
		de instalación del phpMemcachedAdmin</h2>
	<p>
		phpMemcachedAdmin se debe bajar en el sitio &#160;<a
			href="https://code.google.com/p/phpmemcacheadmin/"
			class="external-link" rel="nofollow">https://code.google.com/p/phpmemcacheadmin/</a>&#160;,
		él es un script simple en php y como tal se debe ejecutar en un
		servidor http que tenga suporte a php.
	</p>
	<p>
		La última versión hasta la fecha en que esa guía se escribió es la
		1.2.2-r262 que se puede obtener en el link: <a
			href="http://phpmemcacheadmin.googlecode.com/files/phpMemcachedAdmin-1.2.2-r262.tar.gz"
			class="external-link" rel="nofollow">http://phpmemcacheadmin.googlecode.com/files/phpMemcachedAdmin-1.2.2-r262.tar.gz</a>
	</p>
	<p>siguiendo las instrucciones del sitio debemos descomprimir el
		paquete, dar permiso de ejecución a los scripts y permiso de escritura
		en el archivo de configuración de los servidores y en la carpeta en
		que se generan los informes</p>
	<p>&#160;</p>
	<p>en la carpeta raíz de su servidor ej: /var/www/</p>
	<p>mkdir phpMemcachedAdmin</p>
	<p>cd phpMemcachedAdmin</p>
	<p>
		wget <a
			href="http://phpmemcacheadmin.googlecode.com/files/phpMemcachedAdmin-1.2.2-r262.tar.gz"
			class="external-link" rel="nofollow">http://phpmemcacheadmin.googlecode.com/files/phpMemcachedAdmin-1.2.2-r262.tar.gz</a>
	</p>
	<p>tar -xvzf phpMemcachedAdmin-1.2.2-r262.tar.gz</p>
	<p>chmod +rx *</p>
	<p>chmod 0777 Config/Memcache.php</p>
	<p>chmod 0777 Temp/</p>
	<h2 id="Monitoramentomemcached-Comoconfigurar">Cómo configurar</h2>
	<p>
		Apuntar el navegador hacia la instalación de phpMemcahedAdmin en su
		servidor, en este caso nuestra instalación está en<a
			href="http://localhost/phpMemcachedAdmin"
			style="line-height: 1.4285715;" class="external-link" rel="nofollow">http://localhost/phpMemcachedAdmin</a>.
	</p>
	<p>&#160;</p>
	<p>
		<img class="confluence-embedded-image"
			src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-1.png?version=1&modificationDate=1408726889000&api=v2"
			data-image-src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-1.png?version=1&modificationDate=1408726889000&api=v2">
	</p>
	<p>&#160;</p>
	<p>Inicialmente el monitorizador ya viene configurado para
		conectarse a un memcached local en la máquina en que se instaló, en
		caso de que el memcached esté instalado en otro lugar debemos acceder
		al link "Edit Configuration" localizado en la esquina superior derecha
		que direccionará hacia la página a seguir.</p>
	<p>
		<img class="confluence-embedded-image"
			src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-2.png?version=1&modificationDate=1408735007000&api=v2"
			data-image-src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-2.png?version=1&modificationDate=1408735007000&api=v2">
	</p>
	<p>&#160;</p>
	<p>En esta pantalla es posible monitorizar varias instalaciones de
		memcached, para nuestra configuración sólo vamos a editar la dirección
		del servidor y el puerto, recordando que el puerto estándar es el
		11211, después de guardar las modificaciones ya podemos seguir las
		páginas de monitorización haciendo clic en "See Live Stats" o "See
		Stats for" &#160;más la selección del servidor en el combo siguiente.</p>
	<p>En el caso en que las configuraciones presenten algún problema,
		usted visualizará la página a continuación, en el caso de que eso
		ocurra verifique si el memcached está funcionando y es accesible desde
		el servidor en que el phpMemcached se instaló, una manera de verificar
		eso es haciendo un telnet en la dirección del memcached en el puerto
		11211.</p>
	<p>
		<img class="confluence-embedded-image"
			src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-3.png?version=1&modificationDate=1408735567000&api=v2"
			data-image-src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-3.png?version=1&modificationDate=1408735567000&api=v2">
	</p>
	<h2
		id="Monitoramentomemcached-Pontosdeatençãoquedevemsermonitoradosesoluções">Puntos
		de atención que se deben monitorizar y soluciones</h2>
	<p>
		<img class="confluence-embedded-image"
			src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-4.png?version=1&modificationDate=1408735995000&api=v2"
			data-image-src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-4.png?version=1&modificationDate=1408735995000&api=v2">
	</p>
	<p>&#160;</p>
	<p>En el gráfico "Cache Size Graphic" tenemos una clara indicación
		del tamaño de la memoria asignada para este versus el consumo y el
		desperdicio de memoria.&#160;TOTVS Fluig Plataforma se diseño de tal manera que nunca
		expire un registro que está en el cache, pero un alto consumo de
		memoria puede hacer que el memcached de forma voluntaria expurgue los
		registros más antiguos haciendo que los usuarios pierdan ciertos
		permisos, ese comportamiento se evidencia en la cantidad de
		"Evictions" que el sistema está haciendo.</p>
	<p>El memcached fue diseñado para trabajar con bloques de 1 mega
		como estándar, esos bloques reciben el nombre de Slab y agrupan
		registros de tamaños similares. Cuando solicitamos a memcached que
		guarde un registro, se realiza un cálculo para saber en Slab si se va
		a ingresar, si Slab está lleno, se creará una nueva página. &#160;En
		el ejemplo a seguir, Slab 1 guarda informaciones del tamaño de 96
		bytes, como el tamaño de la página de Slab se parametrizó para 5 megas
		en una cuenta aproximada&#160;(1024*1024*5) / 96 = 54613, llegamos a
		la conclusión que ese Slab tiene capacidad para&#160;54613 registros,
		en el caso que se ingrese un registro más, memcached creará una nueva
		página para ese Slab.</p>
	<p>Existen situaciones, como en la Totvs, en que podemos tener
		grupos con más de 100 mil usuarios y que acaban generando registros
		mayores que lo soportado por estándar, para esos casos, debemos
		parametrizar el memcached para trabajar con Slabs mayores modificando
		el parámetro &#160;-I ( I de Iglesia).</p>
	<p>&#160;</p>
	<p>
		<img class="confluence-embedded-image"
			src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-5.png?version=1&modificationDate=1408737325000&api=v2"
			data-image-src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-5.png?version=1&modificationDate=1408737325000&api=v2">
	</p>
	<p>&#160;</p>
	<p>En el ejemplo a seguir, la configuración del tamaño de la página
		del slab fue de 5 megas, ese número es relativamente elevado y acaba
		generando un gran desperdicio de memoria, podemos verificar en el
		ejemplo a seguir que el tamaño máximo de registro es de 1.8 megas, de
		este modo, podemos tener una configuración más asertiva y con un menor
		desperdicio si el parámetro fuese próximo de los 2 megas</p>
	<p>El desperdicio ocurre cuando se crea una página en slab, toda la
		memoria configurada es asignada,&#160;en el caso de 5 megas, si esa
		página no recibe ninguno más o pocos registros, toda esa área va a
		quedar subutilizada.</p>
	<p>&#160;</p>
	<p>
		<img class="confluence-embedded-image"
			src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-6.png?version=1&modificationDate=1408737493000&api=v2"
			data-image-src="http://tdn.totvs.com/download/attachments/152802227/phpMemcachedAdmin-6.png?version=1&modificationDate=1408737493000&api=v2">
	</p>
	<p>&#160;</p>
	<h2 id="Monitoramentomemcached-Comocorrigir.">
		<strong>Cómo corregir.</strong>
	</h2>
	<p>Las parametrizaciones de memcached es una matemática que estamos
		descubriendo poco a poco, hoy ya sabemos que el entorno de Totvs
		necesita una configuración de tamaño de página de Slab mayor que el
		estándar y así hay un consumo mayor de memoria, las configuraciones
		son -m512 -i5m , es decir, estamos asignando 512 megas de memoria y 5
		megas para las página de Slab.</p>
	<p>
		Se pueden obtener mayores informaciones sobre las opciones de
		parametrización en los sitios de memcached y en ese sitio con la
		descripción de los parámetros&#160;<a
			href="http://linux.die.net/man/1/memcached" class="external-link"
			rel="nofollow">http://linux.die.net/man/1/memcached</a>
	</p>
	<p>&#160;</p>
	<p>&#160;</p>
</div>