martes, 16 de octubre de 2012

El comienzo de los servicios web

“Los servicios Web no hacen más que reinventar la rueda, pero esta  vez usando  XML”

Los servicios web se usan para algo que ya existía, pero esta vez con XML que es el formato estándar para los datos que se van a intercambiar.


“No aportan nada nuevo que no tuviéramos ya en CORBA”

Todo lo que proporcionan los servicios web ya era proporcionado por CORBA, que permite que diversos componentes de software escritos en múltiples lenguajes de programación y que corran en diferentes computadoras puedan trabajar juntos.


"No tienen estado"

Significa que no mantiene ninguna información entre sucesivas invocaciones, lo cual limita el número de cosas que se puede hacer con los servicios web, aunque se pueden dar varias soluciones como hacer que el servicio lea el estado de una base de datos o que recupere el estado de la sesión anterior mediante las cookies.


“Los Servicios Web proporcionan las facilidades del Nivel 4 por encima del Nivel 7, dando un paso atrás tanto en eficiencia como en funcionalidad (seguridad, mensajería fiable, etc.)”

Se refiere que hay acceso a los datos (capa4) entre el cliente y el servidor (capa7) entonces. No es tan eficiente porque si se interceptan los paquetes puede haber vulnerabilidades. Y ya no es fiable


“Los servicios Web no permiten resolver ninguno de los problemas realmente difíciles de los sistemas distribuidos, como la interoperabilidad semántica, los repartos de cargas, la fiabilidad, o la escalabilidad”

 

Una de las ventajas de los servicios web es que aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.
También fomentan el uso de estándares y protocolos basados en texto.

Los servicios Web van a suponer un cambio radical en la forma en laque construimos aplicaciones distribuidas hoy en día.

La industria de software se está dando cuenta de que integrar aplicaciones de software en varios sistemas operativos, lenguajes de programación y plataformas de hardware no es algo que puede ser resuelto por un entorno patentado específico.

El problema principal es que las redes de comunicación, al menos las de larga distancia o redes de área amplia (WLAN), son lentas.

Han de concretarse los estándares para habilitar el intercambio de información entre dos o más sistemas, entre distintos leguajes de programación, entre arquitecturas de hardware distintas…

 

GLOSARIO DE TERMINOS

XML: eXtensible Markup Language o lenguaje de marcas extensible, es un lenguaje de marcas desarrollado por el World Wide Web Consortium. Deriva del lenguaje SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTMLes a su vez un lenguaje definido por SGML) para estructurar documentos grandes.

CORBA (Common Object request Broker Architecture) es un estándar definido por el Object Management Group (OMG) que permite diversos componentes de software escritos en múltiples lenguajes de programación y que corren en diferentes computadoras puede trabajar juntos.

Nivel 4: Capa de persistencia o de datos: es la capa donde residen los datos y la encargada de acceder a los mismos. Normalmente, está formada por uno o más gestores de bases de datos que realizan todo el proceso de administración de datos, reciben solicitudes de almacenamiento o recuperación de información desde la capa de negocio.

Nivel 7: Reparto de funciones entre cliente y servidor: las diferentes tecnologías web existentes permiten gestionar y distribuir las responsabilidades de cada una de las prestaciones funcionales entre el cliente y el servidor. Lo más habitual es tener una configuración cliente/servidor de dos o tres capas, dependiendo de si las capas de negocio y datos se agrupan (modelo en dos capas) o si se separan (modelo en tres capas). La separación en dos o tres capas la podemos ver, además, tanto desde el punto de vista del software como del hardware.

Mensajería fiable: al envió de datos sin que sean interceptados

Seguridad: Son unos protocolos y normas que se deben de cumplir y aplicar para proteger el servicio.

Sistemas Distribuidos: Sistemas cuyos componentes hardware y software, que están en ordenadores conectados en red, se comunican y coordinan sus acciones mediante el paso de mensajes para el logro de un objetivo. Se establece la comunicación mediante un protocolo prefijado por un esquema cliente-servidor.

La interoperabilidad: se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la arquitectura y reglamentación de los servicios Web. Para mejorar la interoperabilidad entre distintas implementaciones de servicios Web se ha creado el organismo WS-I, encargado de desarrollar diversos perfiles para definir de manera más exhaustiva estos estándares.

Escalaridad: El sistema es escalable si conserva su efectividad al ocurrir un incremento considerable en el número de recursos y en el número de usuarios.

Héctor De Castro Sendra