Clientes delgados, el advenimiento de la computación en red

Anuncio
mordecki.com
Artículo
Por Daniel Mordecki
22 de febrero de 1998
Después de las numerosas predicciones sobre las bondades de los diversos modelos, las
múltiples crónicas de muertes anunciadas, parece llegar la solución definitiva: vuelva al
viejo centro de cómputos, pero con terminales no tan tontas. ¿No será otra fantasía?
Cliente servidor: ¿una solución o un mito?
El crecimiento de la base instalada de PC operada a partir de su aparición, junto con el desarrollo y
estandarización de las redes de área local, abrieron un mundo de posibilidades a la computación
nunca antes vista.
El proceso es muy largo, pero sin duda el hijo pródigo de este fabuloso abanico de posibilidades fue
la arquitectura cliente servidor. El mensaje fue: "pongamos a cada equipo a hacer lo que mejor hace".
Lo natural del planteo, y el énfasis de prácticamente todas las empresas del mercado en ser parte de
este modelo (una fiebre parecida a la que hoy provoca la santa trinidad: Internet, Intranet, Extranet)
hacían preveer un éxito rotundo y arrasador. En pocos años desaparecerían los centros de cómputos
con sus añejos dinosaurios, para ser sustituidos por legiones de pequeños servidores dedicados a
tareas específicas, accedidos por clientes inteligentes, que les dejarían las tareas más pesadas, para
realizar ellos las tareas menos importantes.
Pero la arquitectura cliente servidor no consiguió resolver de forma definitiva dos grandes problemas:
en primer lugar la distribución dinámica de la carga y en segundo lugar la administración de los
sistemas.
Distribución dinámica de la carga
El modelo original cliente servidor, tenía como una de sus premisas, la inteligencia de cada uno de sus
integrantes para darse cuenta de que una tarea es demasiado pesada, y su habilidad para derivarla a
un servidor, que debería tener más capacidad para ello. Esto debía realizarse en forma automática y
sencilla.
Mas allá de las numerosas soluciones aportadas a este problema, ninguna fue lo suficiente buena
como para dejarlo definitivamente cerrado, y la muestra elocuente de ello es por un lado el tamaño
abultado de los PC cliente, y por otro el infinito proceso de configuración y tuning de los sistemas y
aplicaciones para que la performance sea medianamente aceptable.
La promesa de la arquitectura cliente servidor de una distribución de la carga de trabajo entre los
distintos equipos que componían el sistema en forma dinámica y transparente, nunca dejo de ser
eso: una promesa.
La administración de los sistemas
Cliente servidor es una arquitectura esencialmente distribuida, en todos los sentidos, incluida la
administración. La seguridad, los respaldos, las configuraciones, se transformaron de una tarea
centralizada, en una interminable recorrida cliente por cliente.
Nuevamente, a pesar de los esfuerzos gigantescos de todos los proveedores por aportar soluciones de
fondo a este problema, todavía hoy no hay una estrategia satisfactoria.
La instalación de un protector de pantalla puede dejar a un PC cliente fuera del sistema. El respaldo
de los datos almacenados en los clientes, depende de los clientes y lo que es peor, de los usuarios de
los clientes, y en la mayoría de los casos, la instalación de mejoras o nuevas versiones implica
modificaciones en todos y cada uno de los clientes.
Network Computing, el legado del Cliente Servidor
Hoy en día, la industria de la computación muestra varias tendencias en auge que hacen prever el
cumplimiento de la promesa original de la arquitectura cliente servidor.
Primero, la moda del downsizing ha dado paso al resurgimiento de los centros de computos a la vieja
usanza: las grandes corporaciones aprendieron que un equipo grande, sea este un Mainframe, un
AS/400 o un gran equipo UNIX, es más seguro, confiable y facil de administrar que cientos o tal vez
miles de servidores distribuidos por todos los departamentos de la empresa. Con esto nació un nuevo
segmento de mercado: Server Consolidation.
Segundo: la omnipresencia de los browsers y la aparición de un standar universal que deja atrás el
problema de los sistemas operativos, las plataformas y las incompatibilidades: las tecnologías
vinculadas a Internet: tcp/ip, html, etc.
Tercero: Java, y mucho más allá de java, el concepto de applet: la primera tecnología real y eficiente
para almacenar aplicaciones centralmente y ejecutarlas distribuídas en cualquier plataforma.
¿Que promete la computación en red?
Mas allá de la fiebre por Internet y el soporte para Java, que en muchos casos no es más que un
deseo de no quedar fuera que la moda, sin llegar a la comprensión cabal de lo que ésto significa, se
vislumbra en un horizonte cercano, el advenimiento de toda una familia de aplicaciones y soluciones
que permitan un uso más racional y confiable de los recursos.
Si asumimos que cualquier PC tiene un browser que soporta Java, puedo entonces hacer realidad el
viejo anhelo: almaceno centralmente datos y aplicaciones y ejecuto distirbuido. Los cambios,
configuraciones, administración y seguridad se manejan centralizados, en el servidor. En tiempo de
ejecución, y según lo que el programador halla decidido, el applet hará uso de los recursos del equipo
en el que corre o de los del servidor.
La distribución de la carga sigue siendo un problema no resuelto definitivamente, pero las
herramientas son más poderosas. Las modificaciones a programas y configuraciones no requieren
trabajo en cada PC cliente. Alcanza con modificar los applets y la proxima ejecución los cambios
cobrarán vida.
Es la vuelta a los orígenes, pero en un plano superior: las ventajas de la arquitectura MainframeTerminal tonta con las facilidades de un entorno gráfico y de las aplicaciones tipo PC.
Cliente delgado vs. NETPC vs. PC, una falsa disyuntiva.
Los actores de esta transformación tienen obviamente intereses, y en la mayoría de los casos no son
coincidentes. Por ejemplo: si bien la disyuntiva Java - ActiveXparece saldada en favor del primero,
Microsoft contraataca con COM, abriendo nuevamente el debate. Es necesario ver más alla de los
intereses de cada uno de los jugadores, para ver la importancia de cada una de las tecnologías.
En una instalación compleja, mídala en cientos de puestos de trabajo, cientos de miles de
transacciones o metros de cables de red instalados, las aplicaciones resuelven desde la edición de
textos hasta las tareas de misión crítica (transacciones en linea, actividades contra público, tareas en
tiempo real, etc.), pasando por el correo, la interconexión con otras instalaciones y una infinidad de
tareas.
La clave del problema no está en discutir si el cliente delgado va a tener o no diskettera, si se va a
poder ampliar la memoria, o si es necesario que Java sea interpretado o ejecutado por un chip. La
clave es que determinadas aplicaciones: las de misión crítica, las que involucran a toda la empresa
(productividad no-personal), las de alto impacto en la seguridad, van a migrar a la arquitectura de
computación en red. El resto, fundamentalmente la productividad personal, tareas que involucran
grupos pequeños, etc. se conservarán como hasta ahora.
Todos los equipos, desde la Network Computer, pasando por la NETPC, hasta la estación de trabajo
más potente, pueden jugar el papel de cliente delgado si la aplicacion a correr así lo requiere, y es el
applet que se baja del servidor el que va a determinar el comportamiento de la aplicación en todos
los sentidos. ¿Que importa entonces si el equipo tiene cero, cuatro o diez slots?
El Rey ha muerto ¡Viva el Rey!
Detrás de las bondades de la tecnología cliente servidor, se escondía una horda de enemigos de los
"dinosaurios", que repetían a quien quisiera oirlo: todo problema se puede resolver con una cantidad
suficiente de PC. La vida mostró que que esto no es cierto. ¿No estaremos frente a una nueva horda
que opina que todo problema se resuelve con una cantidad suficiente de applets?
Descargar