Un servicio web (en inglés, Web service) es una tecnología
que utiliza un conjunto de protocolos y estándares que sirven para intercambiar
datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en
lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma,
pueden utilizar los servicios web para intercambiar ,datos en redes de
ordenadores como Internet.
ESTÁNDARES EMPLEADOS
*Web Services Protocol Stack: Así se denomina al conjunto de
servicios y
protocolos de los servicios Web.
• XML (Extensible Markup Language): Es el formato estándar
para los datos que se
vayan a intercambiar.
• SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote
Procedure
Call): Protocolos sobre los que se establece el intercambio.
• Otros protocolos: los datos en XML también pueden enviarse
de una aplicación a
otra mediante protocolos normales como HTTP (Hypertext
Transfer Protocol), FTP
(File Transfer Protocol), o SMTP (Simple Mail Transfer
Protocol).
• WSDL (Web Services Description Language): Es el lenguaje
de la interfaz pública
para los servicios Web. Es una descripción basada en XML de
los requisitos
funcionales necesarios para establecer una comunicación con
los servicios Web.
• UDDI (Universal Description, Discovery and Integration):
Protocolo para publicar la
información de los servicios Web. Permite comprobar qué
servicios web están
disponibles.
• WS-Security (Web Service Security): Protocolo de seguridad
aceptado como
estándar por OASIS (Organization for the Advancement of
Structured Information
Standards). Garantiza la autenticación de los actores y la
confidencialidad de los
mensajes enviados.
VENTAJAS DE LOS SERVICIOS WEB
Aportan interoperabilidad entre aplicaciones de software
independientemente de sus propiedades o de las plataformas sobre las que se
instalen.
Los servicios Web fomentan los estándares y protocolos
basados en texto, que hacen más fácil acceder a su contenido y entender su
funcionamiento.
Permiten que servicios y software de diferentes compañías
ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente
para proveer servicios integrados.
INCONVENIENTES DE LOS SERVICIOS WEB
Para realizar transacciones no pueden compararse en su grado
de desarrollo con los estándares abiertos de computación distribuida como CORBA
(Common Object Request Broker Architecture).
Su rendimiento es bajo si se compara con otros modelos de
computación distribuida, tales como RMI (Remote Method Invocation), CORBA o
DCOM (Distributed Component Object Model). Es uno de los inconvenientes
derivados de adoptar un formato basado en texto. Y es que entre los objetivos
de XML no se encuentra la concisión ni la eficacia de procesamiento.
Al apoyarse en HTTP, pueden esquivar medidas de seguridad
basadas en firewall cuyas reglas tratan de bloquear o auditar la comunicación
entre programas a ambos lados de la barrera.
RAZONES PARA CREAR SERVICIOS WEB
La principal razón para usar servicios Web es que se pueden
utilizar con HTTP sobre TCP (Transmission Control Protocol) en el puerto 80.
Dado que las organizaciones protegen sus redes mediante firewalls -que filtran
y bloquean gran parte del tráfico de Internet-, cierran casi todos los puertos
TCP salvo el 80, que es, precisamente, el que usan los navegadores.
Otra razón es que, antes de que existiera SOAP, no había
buenas interfaces para acceder a las funcionalidades de otros ordenadores en
red.
Una tercera razón por la que los servicios Web son muy
prácticos es que pueden aportar gran independencia entre la aplicación que usa
el servicio Web y el propio servicio. De esta forma, los cambios a lo largo del
tiempo en uno no deben afectar al otro
PLATAFORMAS
Servidores de aplicaciones para servicios Web:
• JBoss servidor de aplicaciones J2EE Open Source de Red Hat
inc.
• Oracle Fusion Middleware
• IBM Lotus Domino a partir de la versión 7.0
• Axis y el servidor Jakarta Tomcat (de Apache)
• ColdFusion MX de Macromedia
• Java Web Services Development Pack (JWSDP) de Sun
Microsystems (basado en Jakarta Tomcat)
• OnAS (parte de
ObjectWeb una iniciativa de código abierto)
• Microsoft .NET
• Novell exteNd (basado en la plataforma J2EE)
• WebLogic
• WebSphere
• JAX-WS con GlassFish
• Zope es un servidor de aplicaciones Web orientado a
objetos desarrollado en el lenguaje de programación Python
• VERASTREAM de AttachmateWRQ para modernizar o integrar
aplicaciones host IBM y VT
• PHP
No hay comentarios:
Publicar un comentario
Escribe cosas lindas aquí...