La velocidad de SharePoint

Por fin un par minutos de tranquilidad para poder hacer algo interesante con SharePoint, no el cotidiano tira-y-afloja con clientes que no saben que es lo que quieren, y que cuando les cuentas que es lo que quieren, empiezan a creer que son “conocedores” de SharePoint… yo solo conozco a dos personas que sean “conocedoras” de SharePoint, y ninguna de las dos es cliente mío…

Perdón por irme por las ramas. Al tema: Velocity, el nuevo juguete de Microsoft. Jorge Serrano ya ha contado de que se trata (“Microsoft Project Code Named Velicity” http://geeks.ms/blogs/jorge/archive/2008/06/03/microsoft-project-code-named-velocity-ctp1.aspx e “Información general sobre el proyecto Velocity” http://geeks.ms/blogs/jorge/archive/2008/06/07/informaci-243-n-general-sobre-el-proyecto-velocity.aspx) así que no me pongo a repetir lo que ya el contó bien contado. El asunto se trata de cacheo, algo con lo que SharePoint siempre ha tenido una relación amor-odio, o, aun mejor dicho, una relación sado-masoquista.

Cacheo de datos es estupendo en aplicaciones Web. Por la forma intrínseca de este tipo de aplicaciones, datos tienen que ser generados una y otra y otra vez, así que meterlos en un depósito temporal para no tener que hacer todo el proceso continuamente es una excelente idea. SharePoint es una aplicación Web, ergo, debe usar cacheo. Y en realidad lo hace: MOSS utiliza las técnicas de cacheo de datos que proporciona el ASP.NET 2.0 y le agrega un mecanismo más preciso (Profile Caching) para mejorar la granularidad (como se puede traducir “granularity” al cristiano?), permitiendo crear perfiles de cacheo diferentes que se puedan aplicar a colecciones de sitios o sitios individuales. Como nota curiosa, WSS no dispone del mecanismo de cacheo que tiene MOSS… y es por eso de la relación rara de que hablábamos anteriormente.

En realidad, a SharePoint no le gusta usar cacheo. Inclusive en las versiones anteriores se podía activar por medio de un cambio en el web.config, pero era prácticamente prohibido hacerlo. Por una razón muy sencilla: SharePoint es un sistema creado para suministrar información a cientos de miles de usuarios, dándole información personalizada a cada uno de ellos (piense nada más que cada usuario puede modificar su propia interface) y si le vamos a dar cache a cada usuario, simplemente no existe batería de servidores con suficiente memoria RAM para mantener el cacheo; o habría que limitar el cacheo a un par de segundos, lo que tampoco tiene mucho sentido.

Pero a SharePoint 2007 le pusieron todo el asunto de Content Management, con lo que ya SharePoint no solamente sirve para crear sitios de trabajo individuales e individualizados, sino también para crear sitios Web comunes y corrientes (Publishing Feature). Y como en sitios de este tipo la información cambia muy poco en el tiempo, y no cambia para nada para cada usuario, cacheo es simpatiquísimo. Así que SharePoint 2007 tiene cacheo, pero solamente para MOSS, pues WSS no tiene la Característica de Publicación, así que no se puede usar para crear sitios Web comunes y corrientes, y, ergo de nuevo, no queremos meterle cacheo…

Como nota al lado, otra de las cosas simpáticas de cacheo en SharePoint es que en granjas de servidores se ve frecuentemente que la información presentada no es consecuente (o, por lo menos, eso es lo que mis queridos clientes siempre dicen); veamos: servidor A tiene en memoria pagina A por 60 segundos; la información de la pagina ha sido cambiada en el momento que el cache del servidor B ha expirado, así que ahora los dos servidores tienen información diferente; el usuario que acaba de ver la pagina desde el servidor A regresa a la pagina, pero esta vez es redirigido por el Load Balancing al servidor B: la información es diferente; vuelve a hacer un refresco de la pagina, y el Load Balancing lo manda al servidor A: regreso a la información antigua… estoy empezando a creer que al final mis pobres clientes hasta puede que tengan razón…

Pero bueno, es el día de irse por las ramas… Velocity: sistema para distribuir el cacheo entre los diferentes servidores de la granja, evitando, de pasada, los problemas de los que hemos estado hablando… suena bien para metérselo a SharePoint… manos a la obra: bajar el software (2.5 MB, no está mal)… buscar una granja de prueba de SharePoint (dos front end, nada del otro mundo)… intentar instalar el software… empieza a instalar sin problemas… llegamos a la pantalla de configuración… error… cancelar el error y seguir adelante… error… volverlo a intentar… error… bueno, al fin y al cabo es software beta… y a SharePoint no le gusta ese asunto del cacheo… habra que esperar hasta la proxima version…

Gustavo – http://www.gavd.net/servers/
Escriba un Comentario que me haga reir…

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *