Arquitectura servidores

23
COLEGIO TECNICO REGIONAL DE SAN CARLOS MANUAL DE ESTUDIO INFORMATICA EN SOPORTE AREA DE REDES

description

Conceptos y funciones de diferentes tipos de servidores

Transcript of Arquitectura servidores

Page 1: Arquitectura servidores

COLEGIO TECNICO REGIONAL DE SAN CARLOS

MANUAL DE ESTUDIO

INFORMATICA EN SOPORTE

AREA DE REDES

Page 2: Arquitectura servidores

ARQUITECTURA CLIENTE SERVIDOR

Con respecto a la definición de arquitectura cliente/servidor se encuentran las siguientes definiciones:

Cualquier combinación de sistemas que pueden colaborar entre si para dar a los usuarios toda la información que ellos necesiten sin que tengan que saber donde esta ubicada.

Es una arquitectura de procesamientos cooperativo donde uno de los componentes pide servicios a otro.

Es un procesamiento de datos de índole colaborativo entre dos o más computadoras conectadas a una red.

El término cliente/servidor es originalmente aplicado a la arquitectura de software que describe el procesamiento entre dos o más programas: una aplicación y un servicio soportante.

IBM define al modelo Cliente/Servidor. "Es la tecnología que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de cómputo o cualquier otro recurso del grupo de trabajo y/o, a través de la organización, en múltiples plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicio hechos por estaciones de trabajo inteligentes o "clientes'', resultan en un trabajo realizado por otros computadores llamados servidores".

"Es un modelo para construir sistemas de información, que se sustenta en la idea de repartir el tratamiento de la información y los datos por todo el sistema informático, permitiendo mejorar el rendimiento del sistema global de información"

Elementos principales

"Los elementos principales de la arquitectura cliente servidor son justamente el elemento llamado cliente y el otro elemento llamado servidor". Por ejemplo dentro de un ambiente multimedia, el elemento cliente seria el dispositivo que puede observar el vídeo, cuadros y texto, o reproduce el audio distribuido por el elemento servidor.

Por otro lado el cliente también puede ser una computadora personal o una televisión inteligente que posea la capacidad de entender datos digitales. Dentro de este caso el elemento servidor es el depositario del vídeo digital, audio, fotografías digitales y texto y los distribuye bajo demanda de ser una maquina que cuenta con la capacidad de almacenar los datos y ejecutar todo el software que brinda éstos al cliente.

EN RESUMEN

C/S es una relación entre procesos corriendo en máquinas separadas

El servidor (S) es un proveedor de servicios.

El cliente (C) es un consumidor de servicios.

C y S Interactúan por un mecanismo de pasaje de mensajes:

Pedido de servicio.

Respuesta

Page 3: Arquitectura servidores

QUE ES UNA ARQUITECTURA

Una arquitectura es un entramado de componentes funcionales que aprovechando diferentes estándares, convenciones, reglas y procesos, permite integrar una amplia gama de productos y servicios informáticos, de manera que pueden ser utilizados eficazmente dentro de la organización.

Debemos señalar que para seleccionar el modelo de una arquitectura, hay que partir del contexto tecnológico y organizativo del momento y, que la arquitectura Cliente/Servidor requiere una determinada especialización de cada uno de los diferentes componentes que la integran.

QUE ES UN CLIENTE

Es el que inicia un requerimiento de servicio. El requerimiento inicial puede convertirse en múltiples requerimientos de trabajo a través de redes LAN o WAN. La ubicación de los datos o de las aplicaciones es totalmente transparente para el cliente.

QUE ES UN SERVIDOR

Es cualquier recurso de cómputo dedicado a responder a los requerimientos del cliente. Los servidores pueden estar conectados a los clientes a través de redes LANs o WANs, para proveer de múltiples servicios a los clientes y ciudadanos tales como impresión, acceso a bases de datos, fax, procesamiento de imágenes, etc.

ELEMENTOS DE LA ARQUITECTURA CLIENTE/SERVIDOR

En esta aproximación, y con el objetivo de definir y delimitar el modelo de referencia de una arquitectura Cliente/Servidor, debemos identificar los componentes que permitan articular dicha arquitectura, considerando que toda aplicación de un sistema de información está caracterizada por tres componentes básicos:

Presentación/Captación de Información Procesos Almacenamiento de la Información

Los cuales se suelen distribuir tal como se presenta en la figura:

Aplicaciones Cliente/Servidor Y se integran en una arquitectura Cliente/Servidor en base a los elementos que caracterizan dicha arquitectura, es decir:

Puestos de Trabajo Comunicaciones Servidores

El Puesto de Trabajo o Cliente

Una Estación de trabajo o microcomputador (PC: Computador Personal) conectado a una red, que le permite acceder y gestionar una serie de recursos» el cual se perfila como un puesto de trabajo universal. Nos referimos a un microcomputador conectado al sistema de información y en el que se realiza una parte mayoritaria de los procesos.

Page 4: Arquitectura servidores

Se trata de un fenómeno en el sector informático. Aquellos responsables informáticos que se oponen a la utilización de los terminales no programables, acaban siendo marginados por la presión de los usuarios.

Debemos destacar que el puesto de trabajo basado en un microcomputador conectado a una red, favorece la flexibilidad y el dinamismo en las organizaciones. Entre otras razones, porque permite modificar la ubicación de los puestos de trabajo, dadas las ventajas de la red.

Los Servidores o Back-end

Una máquina que suministra una serie de servicios como Bases de Datos, Archivos, Comunicaciones,...).Los Servidores, según la especialización y los requerimientos de los servicios que debe suministrar pueden ser:

Mainframes Miniordenadores Especializados (Dispositivos de Red, Imagen, etc.)

Una característica a considerar es que los diferentes servicios, según el caso, pueden ser suministrados por un único Servidor o por varios Servidores especializados.

Las Comunicaciones

En sus dos vertientes:

Infraestructura de redes Infraestructura de comunicaciones

Infraestructura de redes

Componentes Hardware y Software que garantizan la conexión física y la transferencia de datos entre los distintos equipos de la red.

Infraestructura de comunicaciones

Componentes Hardware y Software que permiten la comunicación y su gestión, entre los clientes y los servidores.La arquitectura Cliente/Servidor es el resultado de la integración de dos culturas. Por un lado, la del Mainframe que aporta capacidad de almacenamiento, integridad y acceso a la información y, por el otro, la del computador que aporta facilidad de uso (cultura de PC), bajo costo, presentación atractiva (aspecto lúdico) y una amplia oferta en productos y aplicaciones.

CARACTERISTICAS DEL MODELO CLIENTE/SERVIDOR

En el modelo CLIENTE/SERVIDOR podemos encontrar las siguientes características:

1. El Cliente y el Servidor pueden actuar como una sola entidad y también pueden actuar como entidades separadas, realizando actividades o tareas independientes.

Page 5: Arquitectura servidores

2. Las funciones de Cliente y Servidor pueden estar en plataformas separadas, o en la misma plataforma.

3. Un servidor da servicio a múltiples clientes en forma concurrente.

4. Cada plataforma puede ser escalable independientemente. Los cambios realizados en las plataformas de los Clientes o de los Servidores, ya sean por actualización o por reemplazo tecnológico, se realizan de una manera transparente para el usuario final.

5. La interrelación entre el hardware y el software están basados en una infraestructura poderosa, de tal forma que el acceso a los recursos de la red no muestra la complejidad de los diferentes tipos de formatos de datos y de los protocolos.

6. Un sistema de servidores realiza múltiples funciones al mismo tiempo que presenta una imagen de un solo sistema a las estaciones Clientes. Esto se logra combinando los recursos de cómputo que se encuentran físicamente separados en un solo sistema lógico, proporcionando de esta manera el servicio más efectivo para el usuario final.

También es importante hacer notar que las funciones Cliente/Servidor pueden ser dinámicas. Ejemplo, un servidor puede convertirse en cliente cuando realiza la solicitud de servicios a otras plataformas dentro de la red.

Su capacidad para permitir integrar los equipos ya existentes en una organización, dentro de una arquitectura informática descentralizada y heterogénea.

7. Además se constituye como el nexo de unión mas adecuado para reconciliar los sistemas de información basados en mainframes o minicomputadores, con aquellos otros sustentados en entornos informáticos pequeños y estaciones de trabajo.

8. Designa un modelo de construcción de sistemas informáticos de carácter distribuido.

1. Su representación típica es un centro de trabajo (PC), en donde el usuario dispone de sus propias aplicaciones de oficina y sus propias bases de datos, sin dependencia directa del sistema central de información de la organización, al tiempo que puede acceder a los

2. recursos de este host central y otros sistemas de la organización ponen a su servicio.

En conclusión, Cliente/Servidor puede incluir múltiples plataformas, bases de datos, redes y sistemas operativos. Estos pueden ser de distintos proveedores, en arquitecturas propietarias y no propietarias y funcionando todos al mismo tiempo. Por lo tanto, su implantación involucra diferentes tipos de estándares: APPC, TCP/IP, OSI, NFS, DRDA corriendo sobre DOS, OS/2, Windows o PC UNIX, en TokenRing, Ethernet, FDDI o medio coaxial, sólo por mencionar algunas de las posibilidades.

Page 6: Arquitectura servidores

TIPOS DE CLIENTES

1. "cliente flaco":

o Servidor rápidamente saturado. o Gran circulación de datos de interfase en la red.

1. "cliente gordo":

o Casi todo el trabajo en el cliente. o No hay centralización de la gestión de la BD. o Gran circulación de datos inútiles en la red.

 TIPOS DE SERVIDOR

Servidores de archivos

Servidor donde se almacena archivos y aplicaciones de productividad como por ejemplo procesadores de texto, hojas de cálculo, etc.

Servidores de bases de datos

Servidor donde se almacenan las bases de datos, tablas, índices. Es uno de los servidores que más carga tiene.

Servidores de transacciones

Servidor que cumple o procesa todas las transacciones. Valida primero y recién genera un pedido al servidor de bases de datos.

Servidores de Groupware

Servidor utilizado para el seguimiento de operaciones dentro de la red.Servidores de objetos

Contienen objetos que deben estar fuera del servidor de base de datos. Estos objetos pueden ser videos, imágenes, objetos multimedia en general.Servidores Web

Se usan como una forma inteligente para comunicación entre empresas a través de Internet.

Este servidor permite transacciones con el acondicionamiento de un browser específico.

Page 7: Arquitectura servidores

Estilos del modelo cliente servidor

PRESENTACIÓN DISTRIBUIDA

1. Se distribuye la interfaz entre el cliente y la plataforma servidora. 2. La aplicación y los datos están ambos en el servidor. 3. Similar a la arquitectura tradicional de un Host y Terminales. 4. El PC se aprovecha solo para mejorar la interfaz gráfica del usuario.

Ventajas

Revitaliza los sistemas antiguos. Bajo costo de desarrollo. No hay cambios en los sistemas existentes.

Desventajas

El sistema sigue en el Host. No se aprovecha la GUI y/o LAN. La interfaz del usuario se mantiene en muchas plataformas.

PRESENTACIÓN REMOTA

1. La interfaz para el usuario esta completamente en el cliente. 2. La aplicación y los datos están en el servidor.

Ventajas

La interfaz del usuario aprovecha bien la GUI y la LAN. La aplicación aprovecha el Host. Adecuado para algunos tipos de aplicaciones de apoyo a la toma de

decisiones.

Desventajas

Las aplicaciones pueden ser complejas de desarrollar. Los programas de la aplicación siguen en el Host. El alto volumen de tráfico en la red puede hacer difícil la operación de

aplicaciones muy pesadas.

LÓGICA DISTRIBUIDA

1. La interfaz esta en el cliente. 2. La base de datos esta en el servidor. 3. La lógica de la aplicación esta distribuida entre el cliente y el servidor.

Ventajas

Arquitectura mas corriente que puede manejar todo tipo de aplicaciones. Los programas del sistema pueden distribuirse al nodo mas apropiado. Pueden utilizarse con sistemas existentes.

Desventajas

Page 8: Arquitectura servidores

Es difícil de diseñar. Difícil prueba y mantenimiento si los programas del cliente y el servidor

están hechos en distintos lenguajes de programación. No son manejados por la GUI 4GL.

ADMINISTRACIÓN DE DATOS REMOTA

1. En el cliente residen tanto la interfaz como los procesos de la aplicación. 2. Las bases de datos están en el servidor. 3. Es lo que comúnmente imaginamos como aplicación cliente servidor

Ventajas

Configuración típica de la herramienta GUI 4GL. Muy adecuada para las aplicaciones de apoyo a las decisiones del

usuario final. Fácil de desarrollar ya que los programas de aplicación no están

distribuidos. Se descargan los programas del Host.

Desventajas

No maneja aplicaciones pesadas eficientemente. La totalidad de los datos viaja por la red, ya que no hay procesamiento

que realice el Host.

BASE DE DATOS DISTRIBUIDA

1. La interfaz, los procesos de la aplicación, y , parte de los datos de la base de datos están en cliente.

2. El resto de los datos están en el servidor.

Ventajas

Configuración soportada por herramientas GUI 4GL. Adecuada para las aplicaciones de apoyo al usuario final. Apoya acceso a datos almacenados en ambientes heterogéneos. Ubicación de los datos es transparente para la aplicación.

Desventajas

No maneja aplicaciones grandes eficientemente. El acceso a la base de datos distribuida es dependiente del proveedor

del software administrador de bases de datos.

Definición de middleware

"Es un termino que abarca a todo el software distribuido necesario para el soporte de interacciones entre Clientes y Servidores". Es el enlace que permite que un cliente obtenga un servicio de un servidor. Este se inicia en el modulo de API de la parte del cliente que se emplea para invocar un servicio real; esto pertenece a los dominios del servidor. Tampoco a la interfaz del usuario ni la a la lógica de la aplicación en los dominios del cliente.

Page 9: Arquitectura servidores

Tipos de Middleware

Existen dos tipos de middleware:

1. Middleware general

Este tipo permite la impresión de documentos remotos, manejos de transacciones, autenticación de usuarios, etc.

2. Middleware de servicios específicos

Generalmente trabajan orientados a mensajes. Trabaja uno sola transacción a la vez.

Funciones de un programa servidor

1. Espera las solicitudes de los clientes. 2. Ejecuta muchas solicitudes al mismo tiempo. 3. Atiende primero a los clientes VIP. 4. Emprende y opera actividades de tareas en segundo plano. 5. Se mantiene activa en forma permanente.

ARQUITECTURA SERVIDOR APACHE

Descripción de la arquitectura en módulos del Apache. Explicación y enumeración de las funcionalidades asociadas a cada módulo.

El servidor Apache es un software que esta estructurado en módulos. La configuración de cada módulo se hace mediante la configuración de las directivas que están contenidas dentro del módulo. Los módulos del Apache se pueden clasificar en tres categorías:

Módulos Base: Módulo con las funciones básicas del Apache

Módulos Multiproceso: son los responsables de la unión con los puertos de la máquina, acepando las peticiones y enviando a los hijos a atender a las peticiones

Módulos Adicionales: Cualquier otro módulo que le añada una funcionalidad al servidor.

Las funcionalidades más elementales se encuentran en el módulo base, siendo necesario un módulo multiproceso para manejar las peticiones. Se han diseñado varios módulos multiproceso para cada uno de los sistemas operativos sobre los que se ejecuta el Apache, optimizando el rendimiento y rapidez del código. El resto de funcionalidades del servidor se consiguen por medio de módulos adicionales que se pueden cargar. Para añadir un conjunto de utilidades al servidor, simplemente hay que añadirle un módulo, de forma que no es necesario volver a instalar el software.

Módulos Base y Módulos Multiproceso:

Page 10: Arquitectura servidores

core: Funciones básicas del Apache que están siempre disponibles.

mpm_common: Colección de directivas que se implementan en más de un módulo multiproceso.

beos: Módulo de multiproceso optimizado para BeOS.

leader: Variable experimental de MPM.

mpm_netware: Módulo de multiproceso que implementa un servidor web optimizado para Novell NetWare.

mpmt_os2: MPM híbrido, multiproceso y multihilo para OS/2 .

perchild: Módulo multiproceso que permite a los procesos demonio servir las peticiones que se asignan a distintos id de usuario.

prefork: Implementa un servidor sin hilos.

threadpool: Variante experimental del módulo estándar de MPM .

mpm_winnt: Módulo multiproceso optimizado para Windows NT.

worker: Módulo multiproceso que implementa un híbrido multihilos y multiprocesos de servidor Web.

Módulos adicionales:

mod_access: proporciona control de acceso basándose en el nombre del host del cliente, su dirección IP u otras características de la petición del cliente.

mod_actions: este módulo se utiliza para ejecutar Scripts CGI, basándose en el tipo de medio o el método de petición.

mod_alias: proporcionado para mapear diferentes partes del sistema de ficheros del servidor en el árbol de documentos del servidor, y para redirección de URL's.

mod_asis: envío de ficheros que tienen sus propias cabeceras http.

mod_auth: autentificación de usuario utilizando ficheros de texto.

mod_auth_anon: permite a usuarios anónimos acceder a áreas autentificadas.

mod_auth_dbm: proporciona autentificación utilizando ficheros DBM.

mod_auth_digest: autentificación de usuario utilizando MD5.

mod_auth_ldap: permite la utilización un directorio LDAP para almacenar la base de datos de autentificación.

Page 11: Arquitectura servidores

mod_autoindex: muestra los contenidos de un directorio automáticamente, parecido al comando ls de Unix.

mod_cache: Cache de contenidos indexados por URI's.

mod_cern_meta: Semántica de etiquetas meta del CERN.

mod_cgi: Ejecución de Scritps CGI.

mod_cgid: ejecución de Scripts CGI utilizando un demonio CGI externo.

mod_charset_lite: para la especificación del juego de caracteres de las traducciones.

mod_deflate: comprime el contenido antes de ser enviado al cliente.

mod_dir: Proporcionado para redirecciones y para servir los ficheros de listado de directorios.

mod_disk_cache: Cache para almacenar contenidos identificados por URI.

mod_echo: Un servidor simple de echo para ilustrar los módulos del protocolo.

mod_env: modificación del entorno que se envia a los scripts CGI y las páginas SSI.

mod_expires: Generación de las cabeceras http Expires, de acuerdo de los criterios especificados por el usuario.

mod_ext_filter: pasa el cuerpo de la respuesta a través de un programa antes de enviársela al cliente.

mod_file_cache: cachea una lista estática de ficheros en memoria.

mod_headers: personalización de las peticiones HTTP y las cabeceras de las respuestas.

mod_imap: proceso de imágenes en el lado del servidor.

mod_include: Documentos HTML generados por el servidor (Server Side Includes).

mod_info: proporciona una visión comprensiva de la configuración del servidor.

mod_isapi: Extensiones ISAPI en Apache para Windows.

mod_ldap: pool de conexiones LDAP y cacheo de resultados para la utilización

Page 12: Arquitectura servidores

de otros módulos LDAP.

mod_log_config: registro de las peticiones hechas al servidor.

mod_logio: registro del número de bytes recibidos y enviados en cada respuesta.

mod_mem_cache: Cache de contenidos identificados por URI.

mod_mime: asocia las extensiones de peticiones de los ficheros con el comportamiento del fichero (manejadores y filtros) y contenido (tipos mime, idioma, juego de caracteres y codificación).

mod_mime_magic: determina el tipo MIME de un fichero mirando unos pocos bytes del contenido.

mod_negotiation: se proporciona para la negociación del contenido.

mod_proxy: servidor HTTP/1.1 proxy/gateway.

mod_proxy_connect: extensión de mod_proxy para la gestión de las peticiones CONNECT.

mod_proxy_ftp: soporte FTP para mod_proxy.

mod_proxy_http: soporte HTTP para el módulo mod_proxy.

mod_rewrite: proporciona un motor de reescritura basado en reglas que rescribe las peticiones de URL's al vuelo.

mod_setenvif: permite la configuración de las variables de entorno basándose en las características de la petición.

mod_so: carga del código ejecutable y los módulos en al iniciar o reiniciar el servidor.

mod_speling: intenta corregir las URL mal puestas por los usuarios, ignorando las mayúsculas y permitiendo hasta una falta.

mod_ssl: criptografía avanzada utilizando los protocolos Secure Sockets Layer y Transport Layer Security.

mod_status: proporciona información en la actividad y rendimiento del servidor.

mod_suexec: permite a los scripts CGI ejecutarse con un nombre y grupo específico.

mod_unique_id: proporciona variables de entorno y un identificador único para cada petición.

Page 13: Arquitectura servidores

mod_userdir: directorios específicos para usuarios.

mod_usertrack: registro de actividad de un usuario en el sitio.

mod_vhost_alias: Proporcionado para configurar muchos servidores virtuales dinámicamente.

Instalación de Apache en Windows

El proceso para instalar Apache en Windows es muy sencillo. En adelante, es posible que la configuración del servidor pueda complicarse un poco, sin embargo, si deseamos utilizarlo con las funciones habituales, no hemos de tener mayores problemas en ningún momento.

Instalación

Una vez descargado, debemos instalarlo en nuestro sistema, ejecutando el archivo obtenido. Daremos paso a un asistente que nos guiará en el proceso de instalación del servidor. Durante el proceso nos preguntará el nombre del dominio y del servidor, que podemos rellenar con "localhost". Nos pedirá también una dirección de correo, que podemos rellenar con cualquiera que deseemos. También nos pregunta si deseamos que el servidor responda en el puerto 80 para todos los usuarios o si deseamos que sólo se active para el usuario actual en el puerto 8080, cuando se inicie manualmente. Lo normal es que lo activemos para todos los usuarios.

Con estos datos queda configurado el Apache inicialmente. En cualquier momento podemos editarlos a nuestro gusto o necesidades. Para ello deberemos editar el fichero httpd.conf, que se encuentra en el directorio de instalación de Apache, que hemos indicado durante el proceso de instalación, más concretamente, en el subdirectorio conf. En adelante en este manual podremos aprender las configuraciones más habituales.

Nota: Debemos ir con cuidado de no tener otro servidor configurado para trabajar en el puerto 80 (por ejemplo el servidor IIS que viene en las versiones profesionales o servidor de Windows). En caso de tener en marcha otro servidor web durante la instalación, puede fallar y mostrarnos un mensaje de error que indique esto precisamente, es decir, que no podemos tener dos servidores a la vez escuchando en el puerto 80.

Para solucionar el problema basta con que paremos el IIS o el otro servidor que esté funcionando. El IIS lo podemos parar accediendo a Panel de control - Herramientas administrativas - Servicios de Internet Information Server. La pantalla que sale es la consola de administración del sistema. Aquí debemos desplegar el árbol de la izquierda, pulsando sobre el signo "+", hasta que encontremos el "Sitio web predeterminado". Nos ponemos encima de él y apretamos el botón de STOP que está situado en la barra de herramientas de la consola de administración. También podemos encontrar una opción para detener el servicio pulsando con el botón derecho en el "Sitio web

Page 14: Arquitectura servidores

predeterminado".

Una vez instalado, el Apache se pone en funcionamiento. Para controlar el Apache podemos encontrar en el botón de inicio, sección programas, un nuevo grupo llamado "Apache HTTP Server", con iconos para detener el servidor, ponerlo en marcha, editar el archivo de configuración httpd.conf o para ver los logs de acceso. También podemos ver en la barra de tareas un nuevo icono que indica que el Apache está funcionando y que ofrece opciones para controlarlo si pulsamos sobre él.

Para comprobar que el servidor está activo y funciona correctamente podemos abrir un explorador y probar a acceder a la URL http://localhost, que es nuestro propio servidor. Si todo ha ido bien observaremos el mensaje de bienvenida del servidor con algo como "Funciono! ¡El servidor Apache ha sido instalado en este equipo!".

Estructura de la instalación de Apache

Una vez instalado el Apache, en el directorio raíz de la instalación, se encontrarán los siguientes directorios:

bin: ficheros ejecutables del Apache.

conf: ficheros de configuración del servidor.

error: ficheros con los mensajes de error del servidor, en varios lenguajes.

htdocs: directorio raíz por defecto del servidor (Se guardan las páginas Web).

icons: directorio donde se encuentran los iconos que utiliza el servidor (entre otras cosas para mostrar estructuras de directorios).

logs: directorio donde se almacenan los registros de acceso y errores del servidor.

manual: directorio donde se encuentra el manual del Apache.

proxy: Directorio con los ficheros de la cache del servidor.

Básicamente las configuraciones del servidor residen dentro de dos ficheros, el de configuración principal que se encuentra dentro de la carpeta conf, con el nombre httpd.conf, o dentro de un fichero con el nombre .htaccess que se puede encontrar dentro de cualquier directorio que se encuentre mapeado dentro del servidor. Dentro de cada uno de estos ficheros se ubican las directivas de configuración. Muchas de estas directivas de configuración se pueden encontrar tanto dentro del fichero de configuración principal como dentro de un fichero .htaccess. Los valores de las directivas que se encuentran dentro de un fichero .htaccess, prevalecen frente a los valores de configuración especificados dentro del fichero httpd.conf.

Page 15: Arquitectura servidores

Arquitectura de los Servidores Origin

El éxito comercial de la arquitectura ccNUMA de Silicon Graphics se atribuye a la unión con éxito de tres metas específicas:

Demostrada escalabilidad lineal de la aplicación más alta que los existentes SMPs basados en un bus

Protección de codificación SMP por usar un modelo de memoria compartida distribuida

Rescate de un sistema para el cual el nivel de entrada y el costo incremental del sistema era más bajo que el alto desempeño de los servidores SMP, pero comparable a un racimo de sistemas "cómodos".

La implementación de Silicon Graphics de ccNUMA es una arquitectura altamente flexible construida de componentes modulares, de bajo costo que se pueden escalar para soportar configuraciones grandes y altamente paralelas en soporte de sistemas de multiprocesadores muy económicos. Beneficiado del modelo de programación de memoria compartida SMP, las aplicaciones corren sin modificaciones mientras demuestra altos niveles de escalabilidad. Este beneficio es dado por la modularidad natural de un solo segmento de memoria lógica, representado por memoria en nodos separados físicamente.

Empleando memoria compartida distribuida (DSM: distributed shared memory) con coherencia de cache en hardware, los clientes se benefician de la escalabilidad de la aplicación a un costo más bajo y con un grado más alto de disponibilidad y fiabilidad, entregada en una infraestructura que crece con el aumentó del mercado.

Servidores Origin de Silicon Graphics Inc.

Reconocido por ser la más acanzada tecnología de servidores en el mercado, la arquitectura ccNUMA de Origin de Silicon Graphics se diseñó para darle al modelo de programación SMP niveles más altos de escalabilidad y desempeño, mientras al mismo tiempo reducir el costo de la escalabilidad. La implementación física modular de la arquitectura del Origin deja que usuarios agreguen capacidades computacionales como requirieran, en vez del costoso box-swap común a otras arquitecturas. Finalmente, el diseño del sistema de alto ancho de banda de Origin deja a este muy adelante, ya que como futuro procesador, almacenamiento, gestión de redes y adelantos periférica pasa los límites de las arquitecturas de computadores más convencionales.

El Origin 200/2000 de Silicon Graphics Inc. es un multiprocesador ccNUMA diseñado y fabricado por Silicon Gráphics Inc. El sistema Origin se diseñó partiendo como un multiprocesador capaz de escalar a cantidades pequeñas y grander de procesadores sin mayor costo, menor ancho de banda o mayor latencia. La arquitectura del Origin se diseñó para escalar por sobre 512 nodos interconectados por una red Craylink. Cada nodo consta de uno o dos procesadores R10000 y más de 4 GB de memoria coherente. Cada nodo también conecta al subsistema escalable de XIO IO.

Page 16: Arquitectura servidores

La aceptación de la industria y el gran éxito de Origin han hecho que muchos proveedores de servidores dejen los diseños SMP basados en bus e iniciar inversiones en las plataformas de hardware futuras basadas en ccNUMA. Además de su innovativo esfuerzo de desarrollo, Silicon Graphics lidera como el proveedor primario de sistemas ccNUMA, calculando encima del 95 por ciento de los envíos mundiales de sistemas basados en ccNUMA.

Tecnología de ccNUMA de los Servidores Origin

Como se mencionó previamente, la clave para entregar el alto desempeño escalable de los servidores Origin yace en la arquitectura subyacente ccNUMA. Esta arquitectura no se basa en un bus, sino que es diseñada usando una serie de switchs crossbars no bloqueantes como un tejido de interconexión, esencialmente agregando E/S incremental si la configuración del sistema crece. Los SMPs típicos se basan en sistema de bus y tienen un ancho de banda fijo que no crece y el sistema experimenta estrés cuando se le agrega recursos adicionales de memoria y procesadores. Aunque un ancho de banda fijo puede satisfacer pequeñas configuraciones de un servidor, el escalamiento a números grandes de procesadores requiere crecimiento incremental del ancho de banda entre procesadores y memoria, combinado con baja latencia a memoria, para demostrar desempeño escalable de aplicación.

Tablas de nodo

En el servidor Origin, se unen varios nodos de proceso por un tejido de interconexión llamado CrayLink. Cada nodo de proceso, llamado tabla de nodo, contiene procesadores, una porción de memoria compartida, un directorio para coherencia de caché, y dos interfases: una que conecta a otros aparatos de E/S en el sistema y otra que une tablas de nodo de sistema adicionales. La tabla de nodo es el bloque de construcción más pequeño de la arquitectura escalable de ccNUMA.

Page 17: Arquitectura servidores