Tecnologías Web Modernas: XML, JSON, REST y Arquitecturas Cloud
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 3,01 KB
¿Qué es XML?
Es una herramienta integrada multiplataforma, independiente de la aplicación, del software y del hardware para describir, almacenar y transportar información codificada en formato de texto plano. Permite independizar la información presentada en un documento HTML de su formato de representación, facilita el intercambio de información en entornos heterogéneos, facilita la integración de información proveniente de formatos incompatibles y se utiliza como lenguaje de intercambio de información B2B. Su sintaxis es sencilla y robusta.
XML Schema
XML SCHEMA es un documento XML que define los elementos que pueden aparecer en el mismo.
¿Qué es JSON?
Es una notación mucho más liviana, directa e interesante a la hora de transmitir estructuras a través de la web. Se pueden declarar objetos (conjunto no ordenado de pares clave-valor) y arrays (conjunto ordenado de valores).
¿Qué es REST y RESTful?
- REST: Es un estilo arquitectónico.
- RESTful: Se denomina así a los sistemas que siguen los principios REST; los recursos se identifican mediante URIs, las cuales actúan como manejadores del recurso.
Pila de protocolos de servicios web
- BPM, BPEL4WS: Coordinación de servicios.
- UDDI: Descubrimiento y publicación de servicios.
- WSDL: Descripción de servicios.
- SOAP: Mensajería basada en XML.
- HTTP, FTP: Capa de red.
Modalidades del servicio en la nube
- IaaS (Infrastructure as a Service): Ofrece al cliente espacio de almacenamiento o capacidad de proceso.
- PaaS (Platform as a Service): Pone a disposición del usuario herramientas para realizar desarrollos.
- SaaS (Software as a Service): Proporciona software directamente a los usuarios.
Conceptos de Escalabilidad y Elasticidad
Escalabilidad
Mientras que los sistemas centralizados sufren saturación, los sistemas distribuidos permiten agregar recursos computacionales de muchos ordenadores.
Elasticidad
Motivada por el modelo de pago por uso. Se adapta el número de ordenadores dedicados en función de la demanda actual.
Tolerancia a fallos en MapReduce
MapReduce es un modelo de programación paralelo-distribuido para servicios analíticos que utiliza cloud computing. Su gestión de fallos se basa en:
- Si una tarea se bloquea: Se reintenta en otro nodo.
- Si un nodo se bloquea: Se relanza su tarea actual en otro nodo distinto.
- Si una tarea va lenta (straggler): Se lanza una segunda copia de la tarea en otro nodo y se toma la salida de la copia que finalice primero.