Want to make creations as awesome as this one?

Transcript

Rubén Cabrera Moya 2º ASIR

Proceso desde escribir una URL hasta que se muestra la página web

Funcionamiento de la web

7.Bibliografía

3.Procesamiento

ÍNDICE

00

6.Bases de datos

5.Servidores web

2.Funcionamiento

4.Protocolos

1.Esquema

Sitio estático

Servidor WEB

ESQUEMA

01

Archivo de configuarción

Servidor de aplicaciones

Base de datos

Base de datos

Plantilla

Servidor de aplicaciones

SSG

SSR

SPA

Servidor DNS

Navegador

HTTP response

HTTP request

El servidor recibe la solicitud HTTP y dependiendo de cómo esté configurada la web, el servidor puede simplemente devolver un archivo HTML estático o procesar la solicitud dinámicamente usando Server side rendering, Single page application o Static Site Generation.

El navegador reúne los pequeños trozos, comienza a interpretar el HTML y luego solicita recursos adicionales (CSS, JS), para finalmente mostrarlo en pantalla.

Si el servidor aprueba la solicitud del cliente, enviará al cliente un mensaje diciendo que todo es correcto, a partir de ahi comenzará a enviar los archivos de la página web al navegador como una serie de pequeños trozos llamados paquetes de datos, mediante el protocolo TCP (HTPP response).

El navegador pide al servidor que le envie una copia de la página web mediante un mensaje HTTP. Tanto el mensaje (HTTP request) como los datos enviados entre cliente y servidor se envían utilizando el protocolo TCP/IP.

El navegador, con la URL que hemos escrito, se dirige a un servidor DNS para conseguir la dirección real del sitio web.

FUNCIONAMIENTO

02

El servidor tiene diversas formas de ofrecer una web, según esté configurado puede hacerlo empleando los siguientes procesos:-Static site: es la forma tradicional, el servidor envía directamente los archivos estáticos (HTML, CSS, JS) al cliente, el contenido es fijo y al no requerir procesamiento es muy rápido.-Server side rendering (SSR): el servidor genera el HTML dinámicamente. Al recibir una solicitud, el servidor genera el HTML necesario consultando la base de datos y lo envía al navegador. El contenido se muestra rápidamente al usuario.-Single page aplication (SPA): el servidor envía una estructura HTML mínima y el JavaScript en el cliente se encarga de hacer peticiones adicionales (por ejemplo, a APIs) para construir y actualizar dinámicamente la página. La experiencia de usuario es más fluida ya que no se recarga toda la página al navegar.-Static site generator (SSG): las páginas se generan como archivos HTML estáticos durante el proceso de compilación y se almacenan en un servidor. Cuando el usuario visita el sitio, estas páginas pregeneradas se sirven directamente, sin necesidad de procesamiento adicional en el servidor, combinando así la velocidad de los sitios estáticos con la capacidad de incluir contenido dinámico.

PROCESAMIENTO

03

Durante todo el proceso intervienen diferentes protocolos que aseguran que la navegación web sea segura, eficiente y funcional:HTTP: es el principal protocolo de comunicación entre el cliente y el servidor web. Se encarga de enviar solicitudes (requests) y recibir respuestas (responses) para transferir información.

HTTPS: es la versión segura de HTTP. Utiliza TLS/SSL para cifrar los datos, protegiendo la comunicación entre cliente y servidor frente a interceptaciones o accesos no autorizados.DNS: se utiliza para resolver nombres de dominio en direcciones IP. Es decir, traduce nombres legibles para humanos en direcciones IP que las máquinas pueden usar para encontrar el servidor donde está alojado el sitio web.TCP/IP: El Transmision Communication Protocol y el Internet Protocol son reglas y protocolos que establecen cómo se debe transmitir la información en internet. Por ejemplo, si toda la información se transmite en un sólo mensaje y falla, se tendría que mandar nuevamente todo el mensaje. TCP e IP permiten que este mensaje se divida en partes para transmitir el contenido .TLS/SSL: se utiliza para establecer una conexión segura entre el cliente y el servidor, asegurando que los datos transmitidos a través de HTTPS estén cifrados y no puedan ser interceptados o modificados por atacantes.

PROTOCOLOS

04

Servidores de aplicaciones: manejan aplicaciones más complejas y a menudo gestionan la lógica del servidor. Algunos ejemplos son Tomcat, Node.js, y Django. Sirven tanto páginas estáticas como dinámicas, y a veces se conectan con bases de datos.Servidores proxy: Un servidor proxy actúa como intermediario entre el cliente y el servidor web real. Puede mejorar la seguridad, el rendimiento y la privacidad.

Un servidor web posee cualidades tanto de hardware como de software. Es un ordenador potente conectado 24/7 que cuenta con un sistema operativo, de almacenamiento y de procesamiento sumamente eficaces para atender las consultas de los usuarios.Tipos de servidores web:Servidores HTTP: son los servidores tradicionales que manejan solicitudes y respuestas HTTP, como Apache y Nginx.

SERVIDORES WEB

05

Lighttpd: fue una de las primeras alternativas a Apache, resolviendo sus problemas de gestión de grandes cargas de trabajo. Ofrece rapidez operativa al consumir pocos recursos, siendo una opción idónea para servidores de bajas capacidades. Su aplicación es limitada al carecer de versión oficial para Windows.

Servidores web más comunes:Apache: Es el servidor web de referencia, el más popular y extendido. Es de código abierto, siendo una plataforma eficaz, segura y fiable para alojar sitios web y aplicaciones. Su arquitectura esta algo desfasada.Nginx: Es open source y gratuito (aunque ofrece una versión de pago), destacando por su alto rendimiento. Utiliza un proxy inverso, que protege la identidad de los servidores y mejora la seguridad de la información que acogen. Consume pocos recursos, pero no se puede integrar con PHP de forma nativa.Microsoft IIS: Es de Microsoft, creado específicamente para Windows; es 100% compatible con todas las tecnologías de la compañía, pero eso a su vez supone una limitación en la integración con otros lenguajes y tecnologías.

SERVIDORES WEB

05

En las aplicaciones web, las bases de datos son necesarias para almacenar información como usuarios, productos, pedidos, publicaciones de blogs, comentarios, etc.

Tipos de bases de datos:Bases de datos relacionales (SQL): organizan los datos en tablas, que se relacionan entre sí a través de claves primarias y externas, permitiendo consultas y transacciones complejas. Son ideales para aplicaciones que requieren transacciones y relaciones complejas entre entidades, como plataformas de comercio electrónico o sistemas de gestión de relaciones con el cliente (CRM).Bases de datos NoSQL: manejan una amplia variedad de modelos de datos, incluidos almacenes de documentos, gráficos, valores-clave y columnas anchas, ofreciendo flexibilidad en términos de esquema y escalabilidad. Son ideales para aplicaciones como sistemas de gestión de contenidos, grandes volúmenes de datos y aplicaciones web en tiempo real, que requieren almacenamiento desestructurado.

BASES DE DATOS

06

Bases de datos más comunes:MySQL: es un sistema de gestión de bases de datos relacionales (RDBMS) de código abierto ampliamente utilizado en el desarrollo web. Utiliza lenguaje de consulta estructurado (SQL) para gestionar y manipular bases de datos relacionales. Es conocido por su confiabilidad, rendimiento y facilidad de uso. MongoDB: es una base de datos NoSQL líder que almacena datos en documentos flexibles tipo JSON, lo que significa que la estructura de datos se puede cambiar con el tiempo. Está diseñado para ofrecer escalabilidad, rendimiento y alta disponibilidad. Es particularmente adecuado para aplicaciones que requieren un desarrollo rápido.PostgreSQL: es un sistema de base de datos relacionales de código abierto que enfatiza la extensibilidad. Ofrece funciones como herencia de tablas, claves externas, transacciones y soporte para múltiples tipos de datos. Está diseñado para manejar desde máquinas individuales hasta servicios web con muchos usuarios simultáneos.Redis: es un almacén de datos de valores clave en memoria de código abierto que se utiliza como base de datos, caché y agente de mensajes. Admite estructuras de datos como cadenas, hashes, listas o conjuntos. Es conocido por su alto rendimiento, ya que admite millones de solicitudes por segundo para aplicaciones en tiempo real, siendo particularmente útil para escenarios que requieren un acceso rápido a datos.

BASES DE DATOS

06

https://developer.mozilla.org/es/docs/Learn/Getting_started_with_the_web/How_the_Web_works#entonces_%C2%BFqu%C3%A9_sucede_exactamentehttps://www.ionos.es/digitalguide/paginas-web/desarrollo-web/que-pasa-cuando-se-abre-una-pagina-web/https://www.cloudcenterandalucia.es/blog/que-es-un-servidor-web-funcionamiento-y-tipos/https://www.crehana.com/blog/transformacion-digital/como-funciona-la-web/https://joseramonbernabeu.com/como-funciona-pagina-web/https://www.geotelecom.es/renderizado-web-como-afecta-al-seo/https://hygraph.com/blog/difference-spa-ssg-ssrhttps://blog.hubspot.es/website/que-es-servidor-webhttps://idecrea.es/que-base-de-datos-deberia-usar-para-mi-web/https://phoenixnap.mx/glosario/base-de-datos-del-sitio-webhttps://dev.to/gabrielomarq/spa-ssr-y-ssg-como-cuando-y-por-que-2d7ehttps://edu.gcfglobal.org/es/creacion-de-sitios-web/consejos-para-un-desarrollo-web/1/

BIBLIOGRAFÍA

07