Justificación Cliente/Servidor. Arquitectura Cliente/Servidor. Nuevas Tareas del Dpto. de Sistemas de Información

Texto completo

(1)

1

Arquitectura

Cliente/Servidor

Tema IV

2

Justificación Cliente/Servidor

A N TE S A H O R A A V A N C E T E C N O L Ó G IC O • R igidez. • N o redistribución. • V inculación al sistem a. • Solapam iento, duplicación y redundancia. • M últiples procesadores • Portabilidad entre procesadores. • M igrabilidad entre plataform as. E X IG E N C IA S D E L A E M P R E SA • Producción m asiva.

• T areas sim ples.

• R epetitivas.

• D esm otivación.

• U suario operador.

• C om petencia.

• R enovación.

• Factor tiem po crítico.

• A utonom ía. • U suario analista. E N T O R N O G E N E R A L • A daptación a la capacidad del ordenador. • O rdenadores caros. • U suarios asustadizos.

• Softw are a m edida.

• O rdenadores accesibles.

• D om esticación de la inform ática.

Nuevas Tareas del Dpto. de

Sistemas de Información

• Soporte a la gestión empresarial. Apoyo a los objetivos. • Selección de Estándares: – Compatibiliza. – Facilita al usuario. • Infraestructura C/S: – Plataforma operativa. – Entorno de desarrollo. – Gestión del SID.

– Arquitectura de la aplicación: • Portabilidad.

• Interoperatividad. • Distribuida.

• Desarrollo corporativo (no departamental). • Integración de aplicaciones propias con estándar.

Implicaciones del modelo

Cliente/Servidor

Nuevo proceso de desarrollo Nuevas herramientas de desarrollo:

Prototipos

Nuevos roles de Sistemas de Información y de los usuarios

Infraestructura Abierta Cliente/Servidor Necesidades comerciales en continua evolución

(2)

5

¿Cuándo implantar C/S?

• Cambios estructurales y organizativos.

• Cambios en organigramas.

• Respuesta dinámica de mercado.

• Cambio en procesos de negocio.

6

¿Qué ayuda a la implantación?

• La demanda de sistemas fáciles.

• Precio/rendimiento de estaciones y

servidores.

• Creciente acceso a la información para

decisiones: Separación datos-programas.

Programas flexibles.

• Nuevas tecnologías de alta productividad.

Cliente/Servidor

Definición: Sistema distribuido entre

múltiples procesadores donde hay clientes

que solicitan servicios y servidores que los

proporcionan.

Separa los servicios situando cada uno en su

plataforma más adecuada.

Objetivos de C/S

• Localización transparente.

• Recursos compartidos.

• Escalabilidad

– Horizontal: > nº estaciones.

– Vertical: migración a otras plataformas.

(3)

9

Evolución

• 1ª ÉPOCA:

– LAN.

– LAN con MAINFRAMES.

– Comunicaciones homogéneas (LU, SNA, APPC).

• 2ª ÉPOCA:

– Herramientas de desarrollo C/S.

– Proveedores DBMS con C/S.

– Downsizing: migración a PCs.

– S.O. De red con servidores de servicios.

10

Evolución (II)

• 3ª ÉPOCA: ACTUAL.

– PWS: Estaciones de trabajo programables gráficamente. – GUI: Interfaz gráfico de usuario. Alta resolución.

– Nuevas tecnologías: Ratón, lápiz óptico, scanner, multimedia. – Tecnología de componentes: DDE y OLE.

– Conectividad de BDs: ODBC, JDBC

– Objetos Distribuidos: CORBA, COM, COM+, DCOM – Internet: HTML, CGI, Applet, ActiveX, JAVA, JAVASCRIPT – Arquitecturas C/S de 2 y 3 niveles.

– Middleware.

Tecnología de componentes:

DDE y OLE

• DDE: (Dynamic Data Exchange) (Microsoft).

– Enlaces de datos dinámicos.

– Información automáticamente actualizada entre

aplicaciones.

• OLE: (Object Linking and Embeding) (Microsoft).

– Objetos enlazados y embebidos.

– Enlazado: Guardando una referencia.

– Embebido: Insertando un documento.

Conectividad de BDs

• ODBC: (Open DataBase Conectivity) (Microsoft).

– Conectividad abierta entre BDs.

– Interfaz de conexión entre BDs (especialmente

Microsoft)

• JDBC: (Java DataBase Conectivity) (Java).

– Conectividad abierta entre BDs versión Java.

– Abierto.

(4)

13

Objetos Distribuidos

• CORBA

(Common Object Request Broker Architecture) (Object Management Group): Estándar de programación distribuida basada en objetos.

• COM

(Microsoft): Interface estándar para objetos (no importa cómo están programados).

• COM+

(Microsoft): Extensión de COM en el que se añade un modelo para la programación de objetos.

• DCOM

(Microsoft): Extensión de COM que permiten crear objetos clientes y servidores utilizando COM aunque creando transparencia sobre la localización física del objeto (es decir que puede encontrarse en otra máquina). La gestión de la comunicación está embebida.

14

INTERNET

• HTML (HyperText Markup Language): Lenguaje basado en el estándar SGML de etiquetado para la creación de páginas web en el servidor visibles desde un cliente remoto con su propio visor.

• CGI (Common Gateway Interface): Interface para el tratamiento de ejecutables en el servidor (remoto) a petición de clientes. Rápido y muy modular.

ActiveX (Microsoft): Objetos visuales de control (desde botones hasta mini-aplicaciones) embebidos en un documento (o página web) que se descargan y se ejecutan en el visor del cliente.

JAVA (Sun Microsystems): Lenguaje de programación específico para C/S en internet. Lento, con aplicaciones mayores.

• APPLET: Objetos visuales embebidos en una página web (versión abierta de ActiveX).

JAVABEANS (Sun Microsystems): Especificación para objetos en Java.JAVASCRIPT (Netscape): Lenguaje de utilidades para HTML.

Evolución (III)

• EL FUTURO.

– Facilidad de uso de las aplicaciones.

– Accesos a datos distribuidos en cualquier lugar del

mundo (y del espacio).

MIDDLEWARE

• Conecta procesos para constituir aplicación.

• Conjunto de funciones + servicios.

• Actúa en el bajo nivel del SID:

– Comunicación.

– Directorios.

– Integridad.

• Define la plataforma de transparencia de

localización.

(5)

17

Características C/S.

• Flexibilidad:

– Middleware.

– Separación de funciones:

• Lógica de presentación.

• Lógica de negocio.

• Lógica de datos.

– Encapsulación de servicios.

– Portabilidad - reubicación.

– Operación sincrono - asíncrono.

18

Características C/S (II).

• Entorno de aplicaciones incremental.

– Añadir un nuevo servidor.

– Añadir un nuevo cliente.

– Modificar un cliente para usar un nuevo

servidor.

• Integración: por la GUI.

Modelos C/S

• Presentación distribuida

– Proporciona un API que separa la

programación de ventanas del resto.

– Ejemplo: X-Windows System en UNIX o

Windows95 y NT.

Presentación

Negocio

Datos

C

S

Modelos C/S (II)

• Función distribuida

– Máxima flexibilidad.

– Lógicas de negocio separadas.

Presentación Negocio

Negocio

Datos

(6)

21

Modelos C/S (III)

• Datos distribuidos

– Ficheros distribuidos.

– Bases de datos distribuidas.

Presentación

Negocio

Datos

C

S

22

Aplicaciones de 2 y 3 niveles

• 2 niveles:

– Generalmente usa los modelos de función

distribuida o datos distribuidos.

– Muy productivo.

– Distribución no flexible.

– Dependiente del suministrador.

Aplicaciones de 2 y 3 niveles (II)

• 3 niveles:

– Modelo presentación-negocio-datos

– Distribución flexible.

– Sistema abierto. No dependiente.

C

C

C

Negocio

Sistemas abiertos

• Definición según IEEE:

“Un conjunto completo y consistente de estándares internacionales de tecnología de información y de estándares funcionales, que especifica interfaces, servicios y formatos de soporte para conseguir la

interoperatividad y portabilidad de aplicaciones, datos y personas”.

• Definición según ISO:

“Todo el conjunto de interfaces, servicios y formatos de soporte, además de otros aspectos de usuarios, para la interoperativilidad o la

portabilidad de aplicaciones, datos o personas, según se especifica en los estándares y perfiles de tecnología informática”

(7)

25

Sistemas Abiertos:

Características.

• Elección libre de plataforma gracias a la

portabilidad e interoperatividad.

• Protección de la inversión empresarial.

• Libertad de elección del modelo de distribución:

presentación, función o datos distribuidos.

• Explotación de aplicaciones estándar.

26

Estándares

• Definición:

“Conjunto de reglas, definiciones y propiedades mutuamente aceptadas que permite la cooperación de objetos heterogéneos y su utilización”

• Clasificación:

– Por su lugar de publicación:

• Internacional • Regional (CEE). • Nacional.

– Por autor:

• De Iure: por comité • De facto: por fabricante.

Sistemas abiertos vs propietarios

• Tiempo de implantación mayor en abiertos:

– Estándar

10 años.

– Alianzas y consorcios (no oficial): medio plazo.

– Tecnologías propietarias portables: corto plazo.

– Tecnologías propietarias: Rápidas. No abiertas.

• Diferenciador de producto:

– Estándar industrial + algo propio.

– Ejemplo: un DBMS con SQL estándar + 4GL propio.

• Arquitecturas de proveedores importantes.

Sistemas Abiertos:

Factores de éxito.

• Independencia del suministrador.

• Elección de herramientas:

– Interoperativas: Estándares.

– Portables: Estándar o propietario.

• Arquitectura de la aplicación:

(8)

29

Plataformas operativas:

Gestores de recursos

• Definición:

”Programas software que acceden a

recursos (dispositivos, ficheros, bases de datos,

programas, objetos, etc.) y proporcionan un API”.

• Tipos:

– Local: servicio en s.o. local.

– Remoto: con C/S.

– Distribuido: en varios lugares.

30

Plataformas operativas:

Middleware

• Función de intermediario entre clientes y

servidores.

• Otros servicios:

– Directorio de recursos: info. sobre ellos.

– Nominación de recursos.

– Comunicaciones:

• Conversacional (SINC) • RPC: (SINC)

• Cola de mensajes: (ASINC)

– Seguridad: Login único.

– Gestión de transacciones: única para todos los recursos.

Selección de sw C/S

• Sistema operativo.

• Múltiples modelos de distribución C/S.

• Nuevas tecnologías (POO).

• Apertura.

• Integración con sw estándar.

• Operación C/S (síncrona y asíncrona).

• Herramientas de desarrollo potentes.

Figure

Actualización...

Referencias

Actualización...

Related subjects :