Optimizando sitios webs utilizando gcache

Hoy en día con sitios como digg, meneame o similares, es muy fácil llegar a tener miles de visitas diarias. Esas visitas pueden producirnos algún dinero, por esa razón o simplemente por respeto a nuestros visitantes, tenemos que tener un sitio que pueda funcionar para todos los visitantes. Y ya que miles de visitas significan mucho trabajo para el servidor web, bases de datos, gran consumo de ancho de banda, entre otros cosas, tenemos que buscar la forma de optimizar todo al máximo.

Para tener una solución escribí una clase en php, llamado gCache, que ofrece una interfaz amigable para cachear fácilmente contenidos webs. En esta nueva versión que recién terminé soporta responder páginas comprimidas, que es bastante útil para ahorrar ancho de banda.

Aquí esta un ejemplo de uso:

<?php
include("gCache.php");
$cache = new gCache;
$cache->folder = "./cache/";
$cache->contentId="var45";
$cache->timeout = 1; /* 1 minuto */
/* gCache cachea toda la página */
/* entonces gCache puede decidir si enviar comprimido o no */
$cache->isPage=true;
if ($cache->Valid()) {
    echo $cache->content;
} else {
$cache->capture();
?>
<html>
<head>
<title>Cached page</title>
<head>
<body bgcolor="#CCCCCC">
    <h1>Testing Cesar D. Rodas' gCache Class</h1>
    <hr>
    <h2>Example of how to cache a hole page</h2>
    <hr>
<p>Basicaly what the gCache do, is to store a web-page or a portion of it into
  a<em> <em>cache file</em>. </em>The <em><em>cache file</em></em> has a $timeout
  in second of cache vitality, after that the cache will be re-created.</p>
<p>Also this class provides and locking system which is not depending of POSIX
  or other OS, this feature becomes to this class very portable.</p>
<hr>
<font size="1">This cache page was generated at
<?php echo date("Y/m/d H:i:s")?>
</font><font size="1"> by <a href="http://cesars.users.phpclasses.org/gcache">gCache</a>
</font>
</body>
</html>
<?
$cache->endcapture();
}
?>

Si se tiene mucha memoria RAM, optimizaría bastante que los caches que cambian frecuentemente sea hagan en un “RAM DISK” o tmpfs:

Manuel Lemos escribió en su blog otros consejos de como optimizar sitios webs.

Leave a Reply