Consulta

¿Que es un servidor web?-¿Que es un cliente web?

Un servidor web (server) es un ordenador de gran potencia que se encarga de “prestar el
servicio” de transmitir la información pedida por sus clientes (otros ordenadores,
dispositivos móviles, impresoras, personas, etc.)

Los servidores web (web server) son un componente de los servidores que tienen como
principal función almacenar, en web hosting, todos los archivos propios de una página
web (imágenes, textos, videos, etc.) y transmitirlos a los usuarios a través de los
navegadores mediante el protocolo HTTP (Hipertext Transfer Protocol).

¿Cómo funciona un servidor web?

La comunicación entre un servidor y sus clientes se basa en HTTP, es decir, en el protocolo
de transferencia de hipertexto o en su variante codificada HTTPS.

Para saber cómo funciona, primero es necesario conocer que el web server está
permanentemente en espera de una solicitud de información.

Además, ten en cuenta que toda computadora, smartphone o tablet tiene una dirección IP
única e irrepetible que lo identifica de otro dispositivo en la red, así es como el servidor
web envía la información exacta que el internauta está esperando.

Ahora bien, para que el web server pueda cumplir con su función es necesario que reciba
la petición por parte de un navegador, en otras palabras, se envía un pedido desde una
dirección IP hacia la dirección IP del servidor que aloja los archivos del sitio en cuestión.

A continuación, el servidor web busca en sus archivos la información que se le está
solicitando, procede a interpretar las líneas de código y a enviar el resultado al navegador
cuya dirección IP fue la solicitante.

Este resultado se le muestra a los internautas y es lo que siempre sucede cuando se navega
en sitios de Internet. Cuando este proceso se completa podemos decir que el web server ha
cumplido con su función.

¿Que es un cliente web?

No es más que un CLIENTE FTP al cual podemos acceder a través de nuestro NAVEGADOR WEB sin necesidad de tener otra aplicación para ello. Al disponer de un cliente FTP basado en web se puede acceder al servidor FTP remoto como si se estuviera realizando cualquier otro tipo de navegación web.

¿Qué son las aplicaciones sicrónicas y asincrónicas en la WEB?

Las aplicaciones asincronicas permiten la notificación de un cliente cuando un evento ocurre en la parte del servidor. De esta forma, las aplicaciones asincronicas pueden actualizar su información de forma mucho más eficiente y rápida que las sincronicas. Las aplicaciones sincrónicas Se refiere al acceso inmediato, en tiempo real de información u otros datos, por ejemplo la mensajería instantánea o videollamadas.

¿Qué tipo de tecnología se requiere para realizar aplicaciones en tiempo real?

Algunas de estas tecnologías son: pooling, webpooling, websockets y eventos, algunas veces conocidas como SaaS

¿Cuáles son las aplicaciones típicas de las aplicaciones en tiempo real?

Aplicaciones como Docker, Symfony, Angular, Ionic y MongoDB como base de datos

¿Qué es Websocket?

WebSocket es una tecnología que proporciona un canal de comunicación bidireccional y full-duplex sobre un único socket TCP. Está diseñada para ser implementada en navegadores y servidores web, pero puede utilizarse por cualquier aplicación cliente/servidor. La API de WebSocket está siendo normalizada por el W3C, mientras que el protocolo WebSocket ya fue normalizado por la IETF como el RFC 6455. Debido a que las conexiones TCP comunes sobre puertos diferentes al 80 son habitualmente bloqueadas por los administradores de redes, el uso de esta tecnología proporcionaría una solución a este tipo de limitaciones proveyendo una funcionalidad similar a la apertura de varias conexiones en distintos puertos, pero multiplexando diferentes servicios WebSocket sobre un único puerto TCP (a costa de una pequeña sobrecarga del protocolo).

6)¿Cuáles son las aplicaciones Websocket?

Está diseñada para ser implementada en navegadores y servidores web, pero puede utilizarse por cualquier aplicación cliente/servidor. La API de WebSocket esta disponible para el código JavaScript cuyo alcance DOM sea un objeto Window o cualquier objeto implementando WorkerUtils; si es así, puedes usarlos desde los Web Workers.

Nota: La API de WebSockets (y el protocolo subyacente) continúan en activo desarrollo, y existen muchos problemas de compatibilidad entre los navegadores en este momento (e inclusive entre los diferentes lanzamientos del mismo navegador).

¿Cuáles son las caracteristicas del API Websockets?

La API de WebSocket invoca al backend en función del contenido de los mensajes que recibe de las aplicaciones cliente.

A diferencia de una API de REST, que recibe las solicitudes y responde a ellas, una API de WebSocket admite la comunicación bidireccional entre las aplicaciones cliente y el backend.

¿Qué navegadores soportan Websockets?

Los navegadores que soportan websockets son: Chrome, Firefox(Gecko), Opera, Safari y edge.

FrontEnd

FrontEnd es la parte de una
aplicación que interactúa con los usuarios,
es conocida como el lado del cliente. Básicamente
es todo lo que vemos en la pantalla cuando
accedemos a un sitio web o aplicación: tipos de
letra, colores, adaptación para distintas
pantallas(RWD), los efectos del ratón,
teclado, movimientos, desplazamientos,
efectos visuales… y otros elementos que
permiten navegar dentro
de una página web. Este conjunto
crea la experiencia del usuario.

BackEnd

El backend del sitio web consiste en
un servidor, una aplicación y una base de datos.
Se toman los datos, se procesa la
información y se envía al usuario.
nos referimos al interior de las aplicaciones
que viven en el servidor y al que a menudo
se le denomina “el lado del servidor”.
Un desarrollador Back end debe tener amplios
conocimientos de los siguientes lenguajes:
frameworks y los tipos de base de datos.
No siendo necesario conocer todos los lenguajes
pero sí entender y saber trabajar con algunos de ellos.

¿Qué son las PWA?

Una aplicación web progresiva es un tipo de software de aplicación que se entrega a través de la web, creado utilizando tecnologías web comunes como HTML, CSS y JavaScript. Está destinado a funcionar en cualquier plataforma que use un navegador compatible con los estándares. La funcionalidad incluye trabajar sin conexión, notificaciones push y acceso al hardware del dispositivo, lo que permite crear experiencias de usuario similares a las aplicaciones nativas en dispositivos móviles y de escritorio. Dado que una aplicación web progresiva es un tipo de página web o sitio web conocido como aplicación web, no hay ningún requisito para que los desarrolladores o usuarios instalen las aplicaciones web a través de sistemas de distribución digital como Apple App Store o Google Play.

Ventajas

-Bajo costo
-Son seguras
-Son indexables
-Son enlazables
-Se actualizan constantemente
-Acceso sin conexión
-Son rápidas
-Se adaptan a cualquier dispositivo

Desventajas

-No se encuentran en la tienda de apps
-Consumen mucha bateria
-El uso de funcionalidades nativas es limitado
-No son para todo público
-No es soportada en su totalidad en navegadores
-Inestabilidad

¿Cuáles son las tecnologías de las aplicaciones móviles nativas, y qué son los service worker y cómo se implementan?

Algunas tecnologías son: Kotlin(Android), Swift(ios), react-native(Android-ios), Xamarin y Ionic. Los service worker es una secuencia de comandos que se ejecuta en segunda plano en el navegador, estos no requieren de interfaz gráfica por lo que pueden llegar a ser muy livianos. Para implementar un service worker se requiere, que el navegador para el cual se está desarrollando la aplicación sea compatible con la tecnología, posterior que necesita que el sitio poseea HTTPS, para ello es necesario un certificado tls y por último se debe de registrar en nuestro sitio web a través de javascript

¿Qué herramientas se pueden utilizar para desarrollar aplicaciones en tiempo real modernas que también funcionen en dispositivos móviles?

Con nodeJs y socket.io se puede implementar tanto en web como de manera nativa.