1) El documento describe una presentación sobre Cloud Computing y Minería Web dada por Miguel Fernández Fernández de la Universidad de Oviedo. 2) La presentación incluye secciones sobre XMPP (Extensible Messaging and Presence Protocol) y cómo puede usarse para comunicación en tiempo real entre aplicaciones web. 3) También cubre tecnologías como WebSockets que permiten flujos bidireccionales para comunicación persistente entre clientes y servidores.
Diapositivas correspondientes a la parte de Web en tiempo real, del curso de extensión universitaria "Cloud Computing. Desarrollo de Aplicaciones y Minería Web", celebrado en la Escuela Universitaria de Ingeniería Informática de Oviedo
El documento describe la generación de sitios web dinámicos usando PHP. Explica brevemente cómo funciona un sitio web a través del protocolo HTTP y las diferentes tecnologías disponibles para el desarrollo de aplicaciones, incluyendo programación en el lado del cliente y del servidor. También cubre el protocolo CGI y cómo los servidores web ejecutan aplicaciones CGI.
Este documento describe cómo imprimir y enviar correos electrónicos desde Flash usando ActionScript. Explica cómo usar una clase PHP para enviar correos electrónicos desde Flash mediante la clase URLVariables y cómo usar la clase PrintJob para imprimir contenido mediante sus métodos start(), addPage() y send(). También cubre el uso de try/catch para controlar errores.
Cómo montar una solución profesional de correo electrónico con software libre. Esta presentación se utilizó durante los cursos de Marzo del GUL de la Universidad Carlos III de Madrid.
Este documento lista numerosos servicios web de Google y proporciona enlaces a sus respectivas documentaciones. Incluye servicios como Android, APIs de datos de Google, Google Analytics, Google Maps, YouTube y muchos más. Explica brevemente cómo crear y consumir servicios web en Java, PHP y Perl.
Este documento breve enumera cuatro servicios de red comunes: DHCP para la asignación dinámica de direcciones IP, DNS para la resolución de nombres, FTP para transferencia de archivos y servicio WEB para acceso a páginas y aplicaciones a través de un navegador.
Whatsapp: mentiras y cintas de video RootedCON 2014Jaime Sánchez
La vigilancia ha emergido como un fenómeno global desde finales de 1940, Internet y la tecnología móvil han sido desarrolladas en un clima de paz que hace imposible garantizar la privacidad y nadie debe esperarla, aunque los usuarios suelen pensar que existe por defecto. Esto nos hace preguntarnos, ¿Cuan fuerte es la seguridad de las actuales plataformas de mensajería instantánea? ¿Se preocupan de nuestra privacidad y seguridad? Hablaremos de la seguridad en plataformas de mensajería móvil y nos centraremos en WhatsApp.
WhatsApp no es tan conocido como Facebook o Twitter, pero recientemente ha anunciado que ha sobrepasado los 350 millones de usuarios activos al mes. La historia de WhatsApp esta llena de errores de seguridad, desde mandar los mensajes en claro, pasando por utilizar usuarios y passwords fácilmente adivinables e imposibles de modificar, hasta permitir el almacenamiento de todo tipo de ficheros de manera anónima en sus servidores, entre otras muchas.
Esto nos ha llevado a profundizar en la investigación de WhatsApp, descubriendo nuevas vulnerabilidades (que afectan tanto al cliente como al protocolo de mensajería) y creando un sistema que securice las conversaciones mediante varias capas de seguridad.
Además, dado que las manifestaciones realizadas por correo electrónico, WhatsApp y demás, son medios de reproducción de la palabra, la imagen y el sonido, éstos podrían ser medios de prueba válidos en derecho y, por tanto, con eficacia probatoria para sustentar o no una demanda judicial. Estos medios de prueba han sido claves en procesos judiciales, tanto en territorio nacional como internacional, y demostraremos que, ya que WhatsApp no almacena las conversaciones en sus servidores, es posible su alteración a voluntad del atacante, de forma indetectable para las actuales técnicas de análisis forense.
Ajax reverse (Comet) con ASP.NET MVC - JUTI 2011Desarrollos NEA
El documento describe las tecnologías Comet y WebSockets para habilitar aplicaciones web en tiempo real. Comet permite comunicación asíncrona del servidor al cliente a través de técnicas como polling y streaming. WebSockets es un protocolo bidireccional que permite comunicación full-duplex. Ambas tecnologías proveen una alternativa a la arquitectura basada en solicitud-respuesta de HTTP para aplicaciones que requieren actualizaciones en tiempo real del servidor.
Diapositivas correspondientes a la parte de Web en tiempo real, del curso de extensión universitaria "Cloud Computing. Desarrollo de Aplicaciones y Minería Web", celebrado en la Escuela Universitaria de Ingeniería Informática de Oviedo
El documento describe la generación de sitios web dinámicos usando PHP. Explica brevemente cómo funciona un sitio web a través del protocolo HTTP y las diferentes tecnologías disponibles para el desarrollo de aplicaciones, incluyendo programación en el lado del cliente y del servidor. También cubre el protocolo CGI y cómo los servidores web ejecutan aplicaciones CGI.
Este documento describe cómo imprimir y enviar correos electrónicos desde Flash usando ActionScript. Explica cómo usar una clase PHP para enviar correos electrónicos desde Flash mediante la clase URLVariables y cómo usar la clase PrintJob para imprimir contenido mediante sus métodos start(), addPage() y send(). También cubre el uso de try/catch para controlar errores.
Cómo montar una solución profesional de correo electrónico con software libre. Esta presentación se utilizó durante los cursos de Marzo del GUL de la Universidad Carlos III de Madrid.
Este documento lista numerosos servicios web de Google y proporciona enlaces a sus respectivas documentaciones. Incluye servicios como Android, APIs de datos de Google, Google Analytics, Google Maps, YouTube y muchos más. Explica brevemente cómo crear y consumir servicios web en Java, PHP y Perl.
Este documento breve enumera cuatro servicios de red comunes: DHCP para la asignación dinámica de direcciones IP, DNS para la resolución de nombres, FTP para transferencia de archivos y servicio WEB para acceso a páginas y aplicaciones a través de un navegador.
Whatsapp: mentiras y cintas de video RootedCON 2014Jaime Sánchez
La vigilancia ha emergido como un fenómeno global desde finales de 1940, Internet y la tecnología móvil han sido desarrolladas en un clima de paz que hace imposible garantizar la privacidad y nadie debe esperarla, aunque los usuarios suelen pensar que existe por defecto. Esto nos hace preguntarnos, ¿Cuan fuerte es la seguridad de las actuales plataformas de mensajería instantánea? ¿Se preocupan de nuestra privacidad y seguridad? Hablaremos de la seguridad en plataformas de mensajería móvil y nos centraremos en WhatsApp.
WhatsApp no es tan conocido como Facebook o Twitter, pero recientemente ha anunciado que ha sobrepasado los 350 millones de usuarios activos al mes. La historia de WhatsApp esta llena de errores de seguridad, desde mandar los mensajes en claro, pasando por utilizar usuarios y passwords fácilmente adivinables e imposibles de modificar, hasta permitir el almacenamiento de todo tipo de ficheros de manera anónima en sus servidores, entre otras muchas.
Esto nos ha llevado a profundizar en la investigación de WhatsApp, descubriendo nuevas vulnerabilidades (que afectan tanto al cliente como al protocolo de mensajería) y creando un sistema que securice las conversaciones mediante varias capas de seguridad.
Además, dado que las manifestaciones realizadas por correo electrónico, WhatsApp y demás, son medios de reproducción de la palabra, la imagen y el sonido, éstos podrían ser medios de prueba válidos en derecho y, por tanto, con eficacia probatoria para sustentar o no una demanda judicial. Estos medios de prueba han sido claves en procesos judiciales, tanto en territorio nacional como internacional, y demostraremos que, ya que WhatsApp no almacena las conversaciones en sus servidores, es posible su alteración a voluntad del atacante, de forma indetectable para las actuales técnicas de análisis forense.
Ajax reverse (Comet) con ASP.NET MVC - JUTI 2011Desarrollos NEA
El documento describe las tecnologías Comet y WebSockets para habilitar aplicaciones web en tiempo real. Comet permite comunicación asíncrona del servidor al cliente a través de técnicas como polling y streaming. WebSockets es un protocolo bidireccional que permite comunicación full-duplex. Ambas tecnologías proveen una alternativa a la arquitectura basada en solicitud-respuesta de HTTP para aplicaciones que requieren actualizaciones en tiempo real del servidor.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, JavaScript y XMLHttpRequest para crear aplicaciones web dinámicas y más interactivas. Permite actualizar partes de una página web sin recargar la página completa a través de peticiones asíncronas al servidor en segundo plano. Esto mejora la usabilidad y experiencia del usuario al navegar sitios web.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, XSLT y JavaScript para crear aplicaciones web más dinámicas e interactivas. Permite actualizar partes de una página web de forma asíncrona sin recargar la página completa a través del objeto XMLHttpRequest. COMET es similar a AJAX pero usa conexiones persistentes para que el servidor pueda enviar datos al cliente sin necesidad de que el usuario lo solicite.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, XSLT y JavaScript para crear aplicaciones web más dinámicas e interactivas. Permite actualizar partes de una página web de forma asíncrona sin recargar la página completa a través del objeto XMLHttpRequest. Esto mejora la usabilidad y experiencia del usuario al reducir los tiempos de carga entre interacciones.
Este documento presenta Multi-Todo, una herramienta de RemObjects que permite el desarrollo de aplicaciones web y móviles de manera multiplataforma, multilenguaje y multi-dispositivo. Multi-Todo proporciona un framework para crear servicios remotos que pueden ser accedidos desde distintos lenguajes de programación a través de diferentes protocolos, permitiendo el desarrollo de aplicaciones escalables de n-capas.
Los servicios web son una herramienta fantástica para los desarrolladores de páginas web. Tenemos a nuestra disposición una ingente cantidad de información incorporada a nuestras páginas actualizada y en tiempo real.
Este documento presenta una guía para la práctica 3 sobre Common Gateway Interface (CGI) y ASP.NET. Explica los conceptos básicos de CGI como métodos HTTP, implementación en C# y configuración en Apache. Luego introduce ASP.NET, describiendo sus principales componentes como WebForms, WebServices y la estructura básica de una aplicación web ASP.NET incluyendo páginas ASPX, controles del servidor web y técnicas como objetos persistentes y cookies. Finalmente incluye algunas referencias sobre estos temas.
1. El documento discute posibles soluciones para implementar un chat por HTTP como Iframe scripting y propone que AJAX es una solución elegante. 2. Explica el esquema de funcionamiento de AJAX donde el navegador realiza peticiones asíncronas al servidor y actualiza el DOM sin recargar la página. 3. Revisa herramientas para desarrollo AJAX como Firebug que permiten debuggear aplicaciones AJAX.
Opensouthcode: Microservicios sobre MEAN StackPedro J. Molina
Este documento resume los conceptos clave de los microservicios utilizando la pila MEAN (MongoDB, ExpressJS, AngularJS y Node.js). Explica brevemente los microservicios, la arquitectura MEAN, herramientas como Express, Mongoose, Baucis y Swagger. También cubre temas como despliegue, escalabilidad, monitorización, configuración y más. El documento proporciona una introducción general a los microservicios MEAN.
Este documento resume los conceptos clave de los microservicios utilizando la pila MEAN (MongoDB, ExpressJS, AngularJS y NodeJS). Explica brevemente los microservicios, la arquitectura propuesta basada en ExpressJS, Mongoose y Baucis para acceder a MongoDB, y los temas de seguridad, escalabilidad, despliegue y monitorización. También incluye una demostración práctica de una aplicación de microservicios desplegada en la nube.
La evolución en el mundo de las Aplicaciones es constante y rápido y los usuarios cada vez requieren funcionalidades más exigentes. Muchas de las Applicaciones destacadas en la tienda hacen un correcto uso de respuesta inmediata, famosos chats, famosos juegos donde ambos oponentes dibujan en tiempo real, etc. ¿Quieres aprender a realizar este tipo de Aplicaciones?. Si quieres aprender como realizar en Windows Phone 8 y Windows 8 Aplicaciones que funcionen en tiempo real utilizando SignalR, no te pierdas esta sesión!
Este documento presenta una introducción a las tecnologías web ASP.NET. Explica las diferencias entre HTML y ASP.NET, así como los conceptos clave de HTTP, formularios HTML, procesamiento en el servidor, ASP vs ASP.NET, y las ventajas de ASP.NET como la compilación, independencia del lenguaje de programación, y encapsulamiento a través de controles. También describe los componentes principales de una aplicación ASP.NET como páginas ASPX, archivos code-behind, y archivos de configuración.
El documento describe las tecnologías orientadas a servicios como SOAP, WSDL, UDDI y su relación con Ruby on Rails. Rails no tiene integración nativa con SOAP pero existen gemas que lo permiten aunque con limitaciones. Se explican conceptos como la filosofía REST y la necesidad de protocolos estándar para la integración de aplicaciones distribuidas. Actualmente existe trabajo en curso para mejorar la integración de Rails con servicios web siguiendo estándares.
Este documento presenta una introducción a Ext JS, incluyendo sus objetivos, temas clave como AJAX, JSON, DOM y programación orientada a objetos en JavaScript. Explica conceptos como el comportamiento de aplicaciones web tradicionales vs. con AJAX, y componentes clave como XMLHttpRequest y marcos AJAX.
Este documento presenta una agenda para un taller sobre ASP.NET MVC. La agenda incluye secciones sobre jQuery, AJAX, bundling y minificación, uso de CDN para scripts, Web API, soporte asincrónico y SignalR. Cada sección cubre conceptos clave y provee demostraciones para ilustrar los temas.
Este documento proporciona una introducción al protocolo HTTP, describiendo sus características principales como mensajes de petición y respuesta, métodos de petición, códigos de estado, características como negociación de contenido y compresión, seguridad, gestión de sesiones, y software como servidores y navegadores web comunes.
El documento describe la introducción de los servlets en 1996 para añadir funcionalidad dinámica a los servidores web. Los servlets se ejecutan dentro de un proceso simple para cada petición, reduciendo la sobrecarga. Una desventaja es que los cambios estáticos en la página requieren recompilar el servlet. Los servlets se escriben usando la API Servlet y el método service() maneja las peticiones y respuestas.
El documento describe la generación de sitios web dinámicos usando PHP. Explica brevemente cómo funciona un sitio web a través del protocolo HTTP y las diferentes tecnologías disponibles para el desarrollo de aplicaciones, incluyendo programación en el lado del cliente y del servidor. También cubre el protocolo CGI y cómo los servidores web ejecutan aplicaciones CGI.
Este documento describe diferentes tecnologías y herramientas para el desarrollo de servicios web con Java, PHP, Perl y Google. Explica cómo crear servicios web simples como saludos y buscadores de libros usando tecnologías como JAX-WS, SOAP, XML-RPC y APIs de Google como Blogger, AdSense y feeds de Gmail.
Codemotion 2013 - Quiero tiempo real y lo quiero para ayerIván López Martín
Iván López Martín presentó sobre arquitecturas orientadas a eventos y cómo pueden mejorar el rendimiento de aplicaciones, permitiendo procesar tareas de forma asíncrona y en paralelo. Discutió cómo Spring Integration y el Framework Reactor pueden usarse para construir aplicaciones basadas en eventos de forma flexible y testeable. También mostró ejemplos prácticos usando estas tecnologías con Grails.
Presentación de la clase sobre el protocolo HTTP de la asignatura Servidores Web del Máster Universitario en Desarrollo de Aplicaciones y Servicios Web.
Slides for the presentation of the paper entitled "Hierarchical Taxonomy Extraction By Mining Topical Query Sessions" in proceedeings of the 1st International Conference on Knowledge Discovery and Information Retrieval (KDIR) celebrated in Madeira in 2009
Este documento presenta una introducción a Yahoo Pipes, una herramienta para combinar ("mashup") datos de diferentes fuentes web de forma visual sin necesidad de programar. Yahoo Pipes permite recibir datos de fuentes como RSS y JSON, transformarlos y combinarlos usando módulos visuales como filtros, expresiones regulares y geolocalización, y producir resultados en formatos como RSS, JSON o mapas. La herramienta sigue el patrón arquitectónico "pipes and filters" dividiendo las tareas en una secuencia de pasos independientes conectados.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, JavaScript y XMLHttpRequest para crear aplicaciones web dinámicas y más interactivas. Permite actualizar partes de una página web sin recargar la página completa a través de peticiones asíncronas al servidor en segundo plano. Esto mejora la usabilidad y experiencia del usuario al navegar sitios web.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, XSLT y JavaScript para crear aplicaciones web más dinámicas e interactivas. Permite actualizar partes de una página web de forma asíncrona sin recargar la página completa a través del objeto XMLHttpRequest. COMET es similar a AJAX pero usa conexiones persistentes para que el servidor pueda enviar datos al cliente sin necesidad de que el usuario lo solicite.
AJAX es una técnica que combina varias tecnologías como XHTML, CSS, DOM, XML, XSLT y JavaScript para crear aplicaciones web más dinámicas e interactivas. Permite actualizar partes de una página web de forma asíncrona sin recargar la página completa a través del objeto XMLHttpRequest. Esto mejora la usabilidad y experiencia del usuario al reducir los tiempos de carga entre interacciones.
Este documento presenta Multi-Todo, una herramienta de RemObjects que permite el desarrollo de aplicaciones web y móviles de manera multiplataforma, multilenguaje y multi-dispositivo. Multi-Todo proporciona un framework para crear servicios remotos que pueden ser accedidos desde distintos lenguajes de programación a través de diferentes protocolos, permitiendo el desarrollo de aplicaciones escalables de n-capas.
Los servicios web son una herramienta fantástica para los desarrolladores de páginas web. Tenemos a nuestra disposición una ingente cantidad de información incorporada a nuestras páginas actualizada y en tiempo real.
Este documento presenta una guía para la práctica 3 sobre Common Gateway Interface (CGI) y ASP.NET. Explica los conceptos básicos de CGI como métodos HTTP, implementación en C# y configuración en Apache. Luego introduce ASP.NET, describiendo sus principales componentes como WebForms, WebServices y la estructura básica de una aplicación web ASP.NET incluyendo páginas ASPX, controles del servidor web y técnicas como objetos persistentes y cookies. Finalmente incluye algunas referencias sobre estos temas.
1. El documento discute posibles soluciones para implementar un chat por HTTP como Iframe scripting y propone que AJAX es una solución elegante. 2. Explica el esquema de funcionamiento de AJAX donde el navegador realiza peticiones asíncronas al servidor y actualiza el DOM sin recargar la página. 3. Revisa herramientas para desarrollo AJAX como Firebug que permiten debuggear aplicaciones AJAX.
Opensouthcode: Microservicios sobre MEAN StackPedro J. Molina
Este documento resume los conceptos clave de los microservicios utilizando la pila MEAN (MongoDB, ExpressJS, AngularJS y Node.js). Explica brevemente los microservicios, la arquitectura MEAN, herramientas como Express, Mongoose, Baucis y Swagger. También cubre temas como despliegue, escalabilidad, monitorización, configuración y más. El documento proporciona una introducción general a los microservicios MEAN.
Este documento resume los conceptos clave de los microservicios utilizando la pila MEAN (MongoDB, ExpressJS, AngularJS y NodeJS). Explica brevemente los microservicios, la arquitectura propuesta basada en ExpressJS, Mongoose y Baucis para acceder a MongoDB, y los temas de seguridad, escalabilidad, despliegue y monitorización. También incluye una demostración práctica de una aplicación de microservicios desplegada en la nube.
La evolución en el mundo de las Aplicaciones es constante y rápido y los usuarios cada vez requieren funcionalidades más exigentes. Muchas de las Applicaciones destacadas en la tienda hacen un correcto uso de respuesta inmediata, famosos chats, famosos juegos donde ambos oponentes dibujan en tiempo real, etc. ¿Quieres aprender a realizar este tipo de Aplicaciones?. Si quieres aprender como realizar en Windows Phone 8 y Windows 8 Aplicaciones que funcionen en tiempo real utilizando SignalR, no te pierdas esta sesión!
Este documento presenta una introducción a las tecnologías web ASP.NET. Explica las diferencias entre HTML y ASP.NET, así como los conceptos clave de HTTP, formularios HTML, procesamiento en el servidor, ASP vs ASP.NET, y las ventajas de ASP.NET como la compilación, independencia del lenguaje de programación, y encapsulamiento a través de controles. También describe los componentes principales de una aplicación ASP.NET como páginas ASPX, archivos code-behind, y archivos de configuración.
El documento describe las tecnologías orientadas a servicios como SOAP, WSDL, UDDI y su relación con Ruby on Rails. Rails no tiene integración nativa con SOAP pero existen gemas que lo permiten aunque con limitaciones. Se explican conceptos como la filosofía REST y la necesidad de protocolos estándar para la integración de aplicaciones distribuidas. Actualmente existe trabajo en curso para mejorar la integración de Rails con servicios web siguiendo estándares.
Este documento presenta una introducción a Ext JS, incluyendo sus objetivos, temas clave como AJAX, JSON, DOM y programación orientada a objetos en JavaScript. Explica conceptos como el comportamiento de aplicaciones web tradicionales vs. con AJAX, y componentes clave como XMLHttpRequest y marcos AJAX.
Este documento presenta una agenda para un taller sobre ASP.NET MVC. La agenda incluye secciones sobre jQuery, AJAX, bundling y minificación, uso de CDN para scripts, Web API, soporte asincrónico y SignalR. Cada sección cubre conceptos clave y provee demostraciones para ilustrar los temas.
Este documento proporciona una introducción al protocolo HTTP, describiendo sus características principales como mensajes de petición y respuesta, métodos de petición, códigos de estado, características como negociación de contenido y compresión, seguridad, gestión de sesiones, y software como servidores y navegadores web comunes.
El documento describe la introducción de los servlets en 1996 para añadir funcionalidad dinámica a los servidores web. Los servlets se ejecutan dentro de un proceso simple para cada petición, reduciendo la sobrecarga. Una desventaja es que los cambios estáticos en la página requieren recompilar el servlet. Los servlets se escriben usando la API Servlet y el método service() maneja las peticiones y respuestas.
El documento describe la generación de sitios web dinámicos usando PHP. Explica brevemente cómo funciona un sitio web a través del protocolo HTTP y las diferentes tecnologías disponibles para el desarrollo de aplicaciones, incluyendo programación en el lado del cliente y del servidor. También cubre el protocolo CGI y cómo los servidores web ejecutan aplicaciones CGI.
Este documento describe diferentes tecnologías y herramientas para el desarrollo de servicios web con Java, PHP, Perl y Google. Explica cómo crear servicios web simples como saludos y buscadores de libros usando tecnologías como JAX-WS, SOAP, XML-RPC y APIs de Google como Blogger, AdSense y feeds de Gmail.
Codemotion 2013 - Quiero tiempo real y lo quiero para ayerIván López Martín
Iván López Martín presentó sobre arquitecturas orientadas a eventos y cómo pueden mejorar el rendimiento de aplicaciones, permitiendo procesar tareas de forma asíncrona y en paralelo. Discutió cómo Spring Integration y el Framework Reactor pueden usarse para construir aplicaciones basadas en eventos de forma flexible y testeable. También mostró ejemplos prácticos usando estas tecnologías con Grails.
Presentación de la clase sobre el protocolo HTTP de la asignatura Servidores Web del Máster Universitario en Desarrollo de Aplicaciones y Servicios Web.
Slides for the presentation of the paper entitled "Hierarchical Taxonomy Extraction By Mining Topical Query Sessions" in proceedeings of the 1st International Conference on Knowledge Discovery and Information Retrieval (KDIR) celebrated in Madeira in 2009
Este documento presenta una introducción a Yahoo Pipes, una herramienta para combinar ("mashup") datos de diferentes fuentes web de forma visual sin necesidad de programar. Yahoo Pipes permite recibir datos de fuentes como RSS y JSON, transformarlos y combinarlos usando módulos visuales como filtros, expresiones regulares y geolocalización, y producir resultados en formatos como RSS, JSON o mapas. La herramienta sigue el patrón arquitectónico "pipes and filters" dividiendo las tareas en una secuencia de pasos independientes conectados.
Este documento describe cómo extraer datos de páginas web mediante screen scraping utilizando diferentes lenguajes de programación como Ruby y Java. Explica las herramientas disponibles como HTree, REXML, Hpricot y Mechnize y cómo usarlas para simular el comportamiento humano al navegar por páginas y extraer datos de forma automatizada. También cubre técnicas como el uso de proxies y Tor para realizar peticiones de forma anónima.
Este documento presenta una introducción a Google App Engine. Explica que App Engine es una plataforma como servicio de Google que permite crear aplicaciones web escalables utilizando Python, Java y otros lenguajes. También describe las características principales como la escalabilidad automática, el almacenamiento de datos transaccional y las APIs para tareas programadas y servicios como Users. Finalmente, introduce los conceptos básicos para desarrollar aplicaciones en App Engine como el SDK, el ciclo de desarrollo y las limitaciones del entorno aislado de sandbox.
Diapositivas de la introducción al lenguaje ruby en el curso de extensión universitaria "Desarrollo Web Avanzado" del programa de Extensión Universitaria de la Universidad de Oviedo (2010)
Diapositivas de la introducción al lenguaje ruby en el curso de extensión universitaria "Desarrollo Web Avanzado" del programa de Extensión Universitaria de la Universidad de Oviedo (2010)
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaAMADO SALVADOR
Descubra el catálogo completo de buzones BTV, una marca líder en la fabricación de buzones y cajas fuertes para los sectores de ferretería, bricolaje y seguridad. Como distribuidor oficial de BTV, Amado Salvador se enorgullece de presentar esta amplia selección de productos diseñados para satisfacer las necesidades de seguridad y funcionalidad en cualquier entorno.
Descubra una variedad de buzones residenciales, comerciales y corporativos, cada uno construido con los más altos estándares de calidad y durabilidad. Desde modelos clásicos hasta diseños modernos, los buzones BTV ofrecen una combinación perfecta de estilo y resistencia, garantizando la protección de su correspondencia en todo momento.
Amado Salvador, se compromete a ofrecer productos de primera clase respaldados por un servicio excepcional al cliente. Como distribuidor oficial de BTV, entendemos la importancia de la seguridad y la tranquilidad para nuestros clientes. Por eso, trabajamos en colaboración con BTV para brindarle acceso a los mejores productos del mercado.
Explore el catálogo de buzones ahora y encuentre la solución perfecta para sus necesidades de correo y seguridad. Confíe en Amado Salvador y BTV para proporcionarle buzones de calidad excepcional que cumplan y superen sus expectativas.
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...AMADO SALVADOR
El catálogo general de electrodomésticos Teka presenta una amplia gama de productos de alta calidad y diseño innovador. Como distribuidor oficial Teka, Amado Salvador ofrece soluciones en electrodomésticos Teka que destacan por su tecnología avanzada y durabilidad. Este catálogo incluye una selección exhaustiva de productos Teka que cumplen con los más altos estándares del mercado, consolidando a Amado Salvador como el distribuidor oficial Teka.
Explora las diversas categorías de electrodomésticos Teka en este catálogo, cada una diseñada para satisfacer las necesidades de cualquier hogar. Amado Salvador, como distribuidor oficial Teka, garantiza que cada producto de Teka se distingue por su excelente calidad y diseño moderno.
Amado Salvador, distribuidor oficial Teka en Valencia. La calidad y el diseño de los electrodomésticos Teka se reflejan en cada página del catálogo, ofreciendo opciones que van desde hornos, placas de cocina, campanas extractoras hasta frigoríficos y lavavajillas. Este catálogo es una herramienta esencial para inspirarse y encontrar electrodomésticos de alta calidad que se adaptan a cualquier proyecto de diseño.
En Amado Salvador somos distribuidor oficial Teka en Valencia y ponemos atu disposición acceso directo a los mejores productos de Teka. Explora este catálogo y encuentra la inspiración y los electrodomésticos necesarios para equipar tu hogar con la garantía y calidad que solo un distribuidor oficial Teka puede ofrecer.
HPE presenta una competició destinada a estudiants, que busca fomentar habilitats tecnològiques i promoure la innovació en un entorn STEAM (Ciència, Tecnologia, Enginyeria, Arts i Matemàtiques). A través de diverses fases, els equips han de resoldre reptes mensuals basats en àrees com algorísmica, desenvolupament de programari, infraestructures tecnològiques, intel·ligència artificial i altres tecnologies. Els millors equips tenen l'oportunitat de desenvolupar un projecte més gran en una fase presencial final, on han de crear una solució concreta per a un conflicte real relacionat amb la sostenibilitat. Aquesta competició promou la inclusió, la sostenibilitat i l'accessibilitat tecnològica, alineant-se amb els Objectius de Desenvolupament Sostenible de l'ONU.
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialAMADO SALVADOR
Explora el catálogo completo de cajas fuertes BTV, disponible a través de Amado Salvador, distribuidor oficial de BTV. Este catálogo presenta una amplia variedad de cajas fuertes, cada una diseñada con la más alta calidad para ofrecer la máxima seguridad y satisfacer las diversas necesidades de protección de nuestros clientes.
En Amado Salvador, como distribuidor oficial de BTV, ofrecemos productos que destacan por su innovación, durabilidad y robustez. Las cajas fuertes BTV son reconocidas por su eficiencia en la protección contra robos, incendios y otros riesgos, lo que las convierte en una opción ideal tanto para uso doméstico como comercial.
Amado Salvador, distribuidor oficial BTV, asegura que cada producto cumpla con los más estrictos estándares de calidad y seguridad. Al adquirir una caja fuerte a través de Amado Salvador, distribuidor oficial BTV, los clientes pueden tener la tranquilidad de que están obteniendo una solución confiable y duradera para la protección de sus pertenencias.
Este catálogo incluye detalles técnicos, características y opciones de personalización de cada modelo de caja fuerte BTV. Desde cajas fuertes empotrables hasta modelos de alta seguridad, Amado Salvador, como distribuidor oficial de BTV, tiene la solución perfecta para cualquier necesidad de seguridad. No pierdas la oportunidad de conocer todos los beneficios y características de las cajas fuertes BTV y protege lo que más valoras con la calidad y seguridad que solo BTV y Amado Salvador, distribuidor oficial BTV, pueden ofrecerte.
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
Real-time web
1. Universidad de Oviedo Programa de extensión universitaria
CLOUD COMPUTING.
DESARROLLO DE APLICACIONES Y
MINERÍA WEB
Miguel Fernández Fernández
miguelff@innova.uniovi.es
3. ¿Qué es XMPP?
antesJabber
Extensible Messaging and Presence Protocol
Envío de mensajes en tiempo real
Codificados en XML
Transportados sobre TCP y UDP (media)
http://xmpp.org
5. ¿Por qué XMPP?
para la Web
HTTP
Half-duplex
stateless
c
s
normal polling (AJAX)
c
s
long polling (Comet)
6. ¿Por qué XMPP?
para la Web
HTTP XMPP
Half-duplex Full-duplex
stateless stateful
c
s
normal polling (AJAX)
c
s
long polling (Comet)
7. ¿Por qué XMPP?
para la Web
HTTP XMPP
Half-duplex Full-duplex
stateless stateful
c
s c
normal polling (AJAX)
c
s
conexión persistente
s
long polling (Comet)
10. La red XMPP: Entidades
Servidores
Clientes
Componentes
Plugins
11. Servidores
Enrutan mensajes
Hablan con clientes y otros servidores
FOSS: Ejabberd, Openfire, Tigase
12. Clientes
Humanos y robots
Protocolo cliente-servidor
13. Componentes
Extienden la funcionalidad del servidor
Tienen su propia identidad y dirección
Se ejecutan fuera del mismo
Se comunican con un protocolo específico
Ejemplo típico: Multichat
14. Plugins
Mismo propósito que los componentes
También tienen identidad y dirección
No hay IPC mayor rendimiento
15. Direccionamiento en XMPP
JIDs: almenos uno por cada entidad
local@dom.ain/resource
it@miinterprete.appspotchat.com/adium
Bare JID
Full JID
20. XMPP Stanzas
<stream:stream>
<iq type="get">
<query xmlns="jabber:iq:roster"/> Dame mis contactos
</iq>
<presence/> Estoy online
<message to="bar@otherside.com" from="foo@oneside.com/adium" type="chat">
<body>Tomamos algo?</body>
</message>
<presence type="unavailable"/>
</stream:stream> Dile a bar que si
tomamos algo
21. XMPP Stanzas
<stream:stream>
<iq type="get">
<query xmlns="jabber:iq:roster"/> Dame mis contactos
</iq>
<presence/> Estoy online
<message to="bar@otherside.com" from="foo@oneside.com/adium" type="chat">
<body>Tomamos algo?</body>
</message>
<presence type="unavailable"/>
</stream:stream> Dile a bar que si
Ya no estoy disponible tomamos algo
23. Acercando XMPP a la Web
Pre HTML 5
Comunicación basada en HTTP
AJAX & Long Polling
Bidirectional-Streams over
synchronous HTTP
24. AJAX & Long Polling
AJAX (muestreo frecuente) Comet (Long Polling)
setInterval(function(){ function load(){
// pedimos cada 500 milisegundos esperando cambio $.ajax({ url: '/my/page', success: function(){
$.ajax({ url: '/my/page', success: function(data){} }); // abrimos la conexión durante 20 segundos
}, 500); }, complete: load, timeout: 20000 });
}
Latencia (200ms/petición) Reducción dramática de latencia
Muchas peticiones no recogeran cambios Mucho más eficiente
Se genera mucho tráfico
25. BOSH, XMPP sobre HTTP
Flujos bidireccionales sobre HTTP síncrono
Usa pares de petición-respuesta para simular
Requiere de un proxy que dirija los stanzas al servidor XMPP
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: 483
<body xmpp:version='1.0'
authid='ServerStreamID'
xmlns='http://jabber.org/protocol/httpbind'
xmlns:xmpp='urn:xmpp:xbosh'
xmlns:stream='http://etherx.jabber.org/streams'>
<stream:features>
<mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
<mechanism>SCRAM-SHA-1</mechanism>
<mechanism>PLAIN</mechanism>
</mechanisms>
</stream:features>
</body>
http://xmpp.org/extensions/xep-0206.html
26. HTML5 Websockets
HTML 5
WebSockets
To enable Web applications to maintain bidirectional
communications with server-side processes, this
specification introduces the WebSocket interface.
Gecko 2.0b4 (24/08/2010) (Firefox 4 Nighties)
Soportado en: Webkit 333 (Safari 4, Chrome >4)
27. HTML5 Websockets
HTML 5
WebSockets
To enable Web applications to maintain bidirectional
communications with server-side processes, this
specification introduces the WebSocket interface.
c
s
conexión persistente
Gecko 2.0b4 (24/08/2010) (Firefox 4 Nighties)
Soportado en: Webkit 333 (Safari 4, Chrome >4)
28. El contrato Websocket
[Constructor(in DOMString url, in optional DOMString protocols)]
[Constructor(in DOMString url, in optional DOMString[] protocols)]
interface WebSocket {
readonly attribute DOMString url; ws://services.com/service
// ready state
const unsigned short CONNECTING = 0;
const unsigned short OPEN = 1;
const unsigned short CLOSING = 2;
const unsigned short CLOSED = 3;
readonly attribute unsigned short readyState; estado de
readonly attribute unsigned long bufferedAmount; la conexión
// networking
attribute Function onopen;
attribute Function onmessage;
Recepción de eventos
attribute Function onerror;
attribute Function onclose;
readonly attribute DOMString protocol;
void send(in DOMString data); Envío de mensajes
void close();
};
WebSocket implements EventTarget;
39. Multichat en 23LOC
require 'rubygems'
require 'eventmachine-websocket'
connections=[]
indexes={}
EventMachine::WebSocket.start(:host => "0.0.0.0", :port => 8080) do |con|
con.on_open do
indexes[con]=connections.size+1
con.send "<p class="highlight">Eres el cliente #{indexes[con]}<p>"
connections.each{ |c| c.send "<p class="highlight">El cliente #{indexes[con]} ha entrado en la sala<p>" }
connections << con
end
con.on_message do |msg|
connections.each{ |c| c.send "<p><span class="cliente">Cliente #{indexes[con]}:</span> #{msg}</p>" }
end
con.on_close do
c.send "<p class="highlight">Has abandonado la sala</p>"
connections.delete con
indexes.delete con
end
end
40.
41. Conclusiones
• Hastala aparición de HTML5, XMPP tenía unas expectativas
muy altas como alternativa a Comet.
• Sinembargo, se han cancelado muchos servicios XMPP para
el consumo de datos en tiempo real (Twitter firehose API)
• Websocket se presenta como una alternativa más simple y
elegante para la implementación de servicios Web de tiempo
real
• XMPP no pierde fuerza para mensajería instantánea
44. Universidad de Oviedo Programa de extensión universitaria
CLOUD COMPUTING.
DESARROLLO DE APLICACIONES Y
MINERÍA WEB
Miguel Fernández Fernández
miguelff@innova.uniovi.es