Red de conocimiento informático - Problemas con los teléfonos móviles - Servicios de red

Servicios de red

La tecnología de servicios web es un desarrollo adicional de la idea original de la tecnología de componentes en la era de Internet. Para ser más precisos, los servicios web son una colección de funciones que se encapsulan en una entidad y se publican en la red, y proporcionan API para que las utilicen otros programas. Son los componentes básicos de la informática distribuida en Internet y también son recursos de servicio. a los que se puede acceder a través de URL. Localizar recursos de servicio. En pocas palabras, un servicio web es un componente de una aplicación al que se puede llamar de forma remota. La esencia de los servicios web es proporcionar una plataforma independiente de los sistemas operativos, lenguajes de programación, tipos de máquinas y entornos operativos, para que las aplicaciones puedan disfrutarse en Internet. Los servicios web se basan en una serie de protocolos estándar y su arquitectura de protocolo se muestra en la Figura 4.4.

Figura 4.4 Arquitectura del protocolo de servicios web

El protocolo universal de descripción, descubrimiento e integración UDDI (UniversalDescription, Discovery and Integration) se utiliza para construir un centro de registro de servicios para servicios web e implementar el descubrimiento de servicios. funciones. El lenguaje de descripción de servicios web (WSDL) reside dentro del contenedor de servicios y define una forma estandarizada de proporcionar descripciones de servicios web. SOAP (Protocolo simple de acceso a objetos) proporciona una forma estándar de transmitir datos y activar servicios como un servicio de intercambio de información entre proveedores de servicios y solicitantes de servicios. El lenguaje de marcado extensible (XML) es el estándar para el intercambio de datos en Internet para expresar información en servicios web y se utiliza en SOAP, WSDL y UDDI. La arquitectura de servicios web es una arquitectura orientada a servicios. En la Figura 4.5 se muestra una arquitectura típica de componentes de servicios web.

La arquitectura de servicios web consta de tres componentes principales: solicitantes de servicios, registros de servicios y proveedores de servicios. El proceso de implementación incluye tres procesos: publicación y registro de servicios, consulta y descubrimiento de servicios, y vinculación e invocación de servicios. El solicitante del servicio se refiere al programa cliente que consulta y llama al servicio; el proveedor del servicio es el propietario del servicio y la plataforma en la que se implementa el servicio se refiere al repositorio utilizado para almacenar la información del servicio, donde se encuentra el servicio; Los proveedores publican y registran el servicio, el solicitante del servicio consulta y vincula el servicio y finalmente implementa la llamada al servicio del proveedor de servicios.

Figura 4.5 Arquitectura de componentes de servicios web

Los servicios web tienen dos ventajas principales: publicación e interoperabilidad. En la arquitectura de servicios web, tanto los proveedores de servicios como los solicitantes de servicios pueden distribuirse. Un solicitante de servicios puede llamar de forma remota a los servicios de varios proveedores de servicios, y un proveedor de servicios puede proporcionar servicios a varios solicitantes de servicios al mismo tiempo. la mejor manera de disfrutar del servicio.

La interoperabilidad también es una cuestión clave para compartir servicios. La expresión de información del servicio web se basa en el lenguaje XML universal estándar. Basado en el lenguaje XML, WSDL y UDDI se utilizan para realizar el registro y descubrimiento de servicios, y SOAP se utiliza para realizar la invocación de servicios. Basado en estos protocolos estándar, Web Service realiza el intercambio de servicios entre plataformas y entre idiomas. XML, SOAP, WSDL y UDDI son estándares y tecnologías centrales para crear y consumir servicios web. Estos cuatro estándares y tecnologías se presentan a continuación.

4.2.2.1 XML

XML es un lenguaje de descripción de datos y un estándar para el intercambio de datos en Internet. XML define una estructura para transferir datos entre aplicaciones que no se basa en código binario legible por programa, sino en texto simple que puede leer un editor normal. Los conceptos básicos de XML incluyen elementos, atributos, DTD, esquemas y espacios de nombres. Los elementos son la unidad básica del contenido del documento XML. Sintácticamente, un elemento consta de una etiqueta inicial, una etiqueta final y el contenido de datos entre las etiquetas. Su forma es: lt; etiqueta gt; contenido de datos lt; El contenido de un elemento puede ser otros elementos, texto sin procesar, una mezcla de los dos o puede estar vacío.

El anidamiento de elementos puede representar cómodamente la estructura jerárquica de un documento. Un elemento puede tener múltiples atributos. Un atributo es un par nombre-datos, representado como una cadena. Los usuarios pueden definir sus propias propiedades según sea necesario. Un elemento no puede tener dos atributos con el mismo nombre.

La esencia de XML es que permite a los redactores de documentos desarrollar etiquetas personalizadas basadas en la descripción de la información y reflejar la relación lógica entre los datos. Una DTD es una descripción explícita de la estructura de un documento. Define los elementos, atributos y tipos de entidades permitidos en un documento específico y proporciona la estructura y sintaxis generales del documento. Un esquema XML es un archivo de definición de datos que define XML. XMLSchema también especifica la estructura de un documento específico, que es lo mismo que una DTD. La principal diferencia con una DTD es que es en sí misma un documento XML. Además, existen las siguientes diferencias: el esquema XML se puede analizar utilizando un analizador XML; permite el uso de elementos globales (los elementos se usan de la misma manera en todo el documento XML) y elementos locales (los elementos tienen diferentes significados en un documento específico); contexto); proporciona tipos de datos enriquecidos (enteros, booleanos, fechas, etc.) y los tipos de datos de los elementos se pueden personalizar.

Un espacio de nombres XML es un conjunto de nombres que se pueden utilizar como nombres para elementos o atributos en un documento XML, es decir, una agrupación de nombres para elementos o atributos. Debido a la apertura de XML, cualquiera puede crear sus propios nombres de elementos o atributos, por lo que es inevitable que diferentes personas u organizaciones definan nombres de elementos o atributos duplicados, de modo que el mismo nombre exprese una semántica diferente. Para evitar conflictos entre elementos con el mismo nombre, las restricciones del espacio de nombres requieren que estos nombres de elementos o atributos sean únicos dentro del espacio de nombres. En términos generales, los espacios de nombres se identifican mediante estos identificadores de recursos universales (URI). Los URI son globalmente únicos en Internet. El uso de URI para calificar elementos XML o nombres de atributos puede garantizar que sean globalmente únicos. (1)XML representa datos en formato de texto para una fácil transmisión en Internet. Esto permite que los datos XML se transmitan fácilmente utilizando protocolos de transporte basados ​​en texto existentes en Internet, como HTTP, atravesando así de forma segura los cortafuegos.

(2) XML es extensible. XML es un metalenguaje (MetaLanguage) que utiliza métodos estandarizados para definir otros lenguajes. Simplemente proporciona un formato de datos para estructurar documentos sin tener que profundizar en los datos mismos y definir su vocabulario. Esto hace posible personalizar los lenguajes de marcado, permitiendo que cada industria, cada departamento e incluso cada persona defina su propio lenguaje de marcado.

(3) XML permite una buena descripción jerárquica de la información. Se basa en la descripción del contenido de la información y expresa la información con claridad.

(4)XML permite la verificación automática de la integridad de los datos, y el mecanismo de esquema y DTD XML permite al analizador XML verificar si el documento XML coincide con el DTD o el esquema.

4.2.2.2 SOAP

SOAP permite la integración e interacción entre aplicaciones en Internet definiendo estándares sobre cómo los componentes remotos solicitan información y cómo se entrega. SOAP es un protocolo RPC de solicitud-respuesta basado en HTTP y XML. SOAP en sí no define ninguna semántica de aplicación, como un modelo de programación o la implementación de una semántica específica, pero de hecho define un mecanismo simple para expresar la semántica de la aplicación al proporcionar un modelo de paquete con componentes estándar y un mecanismo de codificación de datos del módulo. Esto permite que SOAP se utilice en una variedad de aplicaciones, desde sistemas de mensajería hasta RPC (llamada de proceso remoto).

La especificación SOAP incluye tres partes principales: sobre (Envelop), reglas de codificación (Encoding Rules) y representación RPC (RPC Representation).

La estructura del sobre SOAP define un marco general de representación de mensajes SOAP que se puede utilizar para representar lo que hay en el mensaje, quién envió el mensaje, quién recibió y procesó el mensaje y si estas operaciones de procesamiento son opcionales o requeridas. Las reglas de codificación SOAP definen un mecanismo mediante el cual se pueden definir los tipos de datos que deben usarse en una aplicación y se pueden intercambiar instancias derivadas de estos tipos de datos definidos por la aplicación. La notación SOAP RPC define convenciones para representar llamadas y respuestas a procedimientos remotos, por ejemplo, cómo vincularse a SOAP utilizando los protocolos HTTP o SMTP, cómo transportar una llamada a procedimiento y en qué parte de un protocolo de transporte específico se transporta una respuesta a un procedimiento. , por ejemplo, se puede utilizar a través de La respuesta de transporte HTTP es la respuesta del proceso de transporte. Estas tres partes son funcionalmente independientes entre sí. En particular, las reglas de codificación y sobre se definen en espacios de nombres XML separados, lo que facilita una definición e implementación simplificadas a través de la modularidad.

Los mensajes SOAP son el elemento principal en las aplicaciones SOAP. SOAP proporciona un mecanismo simple y liviano para el intercambio punto a punto de mensajes estructurados y escritos utilizando XML en un entorno de información poco distribuida. El formato de marco que describe un mensaje SOAP es un documento XML, con el sobre SOAP como elemento raíz y que contiene internamente los subelementos SOAP Header y SOAP Body. El formato del marco de descripción de mensajes SOAP es un documento XML que contiene subelementos de encabezado y cuerpo SOAP, con un sobre SOAP como raíz. Todos los mensajes SOAP están codificados en formato XML y no deben contener DTD ni PI (instrucciones de procesamiento). Con la excepción de los atributos que deben comprender SOAP y los atributos de actor SOAP, los atributos y valores de atributos generalmente pueden describirse libremente en una instancia XML o un esquema XML. SOAP es un protocolo de intercambio de mensajes liviano basado en XML que se basa en los estándares industriales existentes para que las aplicaciones que se ejecutan en plataformas que admiten estos estándares puedan comunicarse con aplicaciones que se ejecutan en otras plataformas a través de mensajes SOAP. Comunicarse de manera eficiente y a través de firewalls, obteniendo un amplio soporte de la industria.

4.2.2.3 WSDL

El lenguaje de descripción de servicios web (WSDL) es una especificación basada en esquemas XML para describir servicios web como conjuntos de operaciones y entrada de datos como mensajes/parámetros de salida. WSDL también define un modelo de comunicación que utiliza mecanismos de enlace para adjuntar cualquier protocolo de transporte, formato de datos o estructura a un mensaje, operación o punto final abstracto.

WSDL describe un servicio web como un conjunto de puntos de acceso al servicio, o un conjunto de "puertos" a través de los cuales los clientes pueden acceder a un servicio que contiene información orientada a documentos o llamadas orientadas a procedimientos. El puerto define dónde se aprovisiona el elemento de servicio. Un servicio puede tener múltiples puntos de suministro, pero sólo puede responder a un conjunto predefinido de "mensajes". "Mensaje" es una descripción de los datos de comunicación. Cada mensaje consta de un conjunto de datos, que deben definirse como un "tipo" que pueda ser reconocido tanto por el receptor como por el remitente. La combinación de puerto y mensaje representa un conjunto de. "operaciones" y define el "tipo de puerto" del punto de acceso al servicio. La asociación del protocolo y el formato de datos define un "enlace" reutilizable que define un puerto y el punto final de implementación específico asociado. A través de la combinación, se convierte en un resumen. servicio de red En resumen, el elemento raíz del documento WSDL es el elemento de definición, y el elemento de definición contiene seis subelementos:

(1) Tipo: Contiene los mensajes que el servidor puede enviar y recibir.

(2) Mensaje: Como referencia cruzada, relaciona los mensajes del esquema con la definición del mensaje. En pocas palabras, define la comunicación. Los datos que contiene incluyen entrada y salida de datos.

(3) Tipo de puerto: define el conjunto de interfaces que el servicio web puede exponer.

Una interfaz está asociada con uno o más mensajes.

(4) Operación: Es una definición abstracta de la función implementada en el lado del servidor.

(5) Vinculación: Asociar una definición de tipo de puerto con un protocolo específico.

(6) Servicio: Define una colección de puntos finales relacionados (puertos) expuestos por el servicio web.

4.2.2.4 UDDI

Protocolo unificado de descripción, descubrimiento e integración UDDI (Descripción, descubrimiento e integración unificados) es un conjunto de La especificación estándar distribuida y basada en Web para la implementación de Registro de información de servicios web, también incluye UDDI (Descripción Universal, Descubrimiento e Integración, Descripción Universal, Descubrimiento e Integración) es un conjunto de especificaciones de registro de información de servicios web distribuidas y basadas en Web, también incluye un conjunto de estándares de implementación para protocolos de acceso que permiten diferentes personas u organizaciones registrar sus propios servicios web para que otros o sus organizaciones los descubran.

El registro UDDI es un lugar para el registro de servicios web y la administración centralizada de usuarios. Permite publicar, consultar y llamar a servicios web, y también permite consultar la información de descripción de servicios específicos y la información de servicio vinculante dinámicamente. El centro de registro UDDI también proporciona funciones como gestión de nodos de servicio, gestión de usuarios, gestión de derechos y gestión de facturación. Los proveedores de servicios deben registrarse y registrar sus servicios en el registro UDDI, de modo que los usuarios puedan obtener la información básica y los detalles técnicos de los servicios requeridos a través del registro UDDI, y luego obtener servicios y productos a través del enlace de servicios.

Figura 4.6 Flujo de trabajo de registro UDDI