- Hablemos un poco de la red.
- Consideremos la estructura del cliente-servidor y la arquitectura de tres niveles.
- Veamos los protocolos HTTP/HTTPS.
- Aprendamos todo lo que necesita saber sobre Maven.
- Hablemos de servlets.
- Contenedores de servlets.
- Y finalmente, sobre MVC.
Parte 1. Hablemos un poco de la red
Comencemos con lo más importante y hablemos de la base sobre la cual se construyen todas las redes sociales, servicios y aplicaciones web, mensajería instantánea y sitios simples: sobre la red ( en el contexto de esta serie de artículos, el término "red" significa Internet Global ). Una red está formada por una gran cantidad de ordenadores: están interconectados y son capaces de comunicarse. Es importante entender cómo lo hacen, porque las aplicaciones web son responsables de transferir información de una computadora a otra.modelo de red OSI
El modelo OSI (Interconexión de sistemas abiertos) crea un enfoque en capas para construir una red. Muestra claramente cómo y en qué nivel los miembros de una misma red pueden interactuar entre sí. En total, este modelo contiene 7 niveles:7 | Aplicado |
6 | Representación |
5 | Sesión |
4 | Transporte |
3 | Red |
2 | Conducto |
1 | Físico |
-
1. Nivel físico : aquí las leyes de la física hacen su trabajo y la tarea del hombre es utilizarlas y dirigirlas para sus propios fines. Por ejemplo, crear cables y tenderlos a los miembros de la red.
No estamos interesados.
-
Capa de enlace de datos : responsable de transmitir datos a los nodos de la red y crear canales de transmisión de datos en objetos físicos.
Нам не интересен, если только нет желания писать прошивку для каналообразующей аппаратуры.
-
Сетевой уровень — для определения DIRECCIÓNов отдельных пользователей сети и маршрутов к ним. На этом уровне стоит остановиться подробнее, а именно — на DIRECCIÓNе пользователя в сети.
Он определяется специальным протоколом: самый распространённый — IPv4 (Internet Protocol version 4). Именно его нужно использовать веб-программисту для обращения к другому абоненту сети.
IPv4 состоит из четырех byteовых значений, разделенных точкой, например: 192.0.2.235. Стоит помнить, что значения byteовые, а значит, они лежат в пределах 0..255.
IP-DIRECCIÓNа, в свою очередь, делятся на классы, и просто так присвоить себе красивую комбинацию циферок не получится, но так сильно углубляться мы не станем. Достаточно понимать, что IP-DIRECCIÓN — это уникальный идентификатор абонента в сети, по которому мы сможем к нему обратиться.
-
Транспортный уровень — занимается доставкой информации DIRECCIÓNату. Для этого используются разные протоколы, которые нам пока не интересны. Гораздо больше нас интересует понятие, которое появляется на этом уровне, — port.
Порты отвечают за идентификацию конкретного aplicaciones на компьютере. Например, ты написал чат на Java, установил на 2 компа и хочешь отправить своему собеседнику. Твое сообщение упаковывается, отправляется по конкретному IP-DIRECCIÓNу, доставляется твоему собеседнику, но его ПК не знает, что делать с полученной информацией, так Cómo не понимает, Cómoое приложение должно обработать твое сообщение. Для этого и указываются порты при общении абонентов в сети.
Порт представляет собой число от 0 до 65535. Он добавляется к IP-DIRECCIÓNу после двоеточия: 192.0.2.235:8080. Но нельзя использовать все порты из указанного диапазона: часть из них зарезервирована под операционную систему, еще часть принято использовать с конкретно оговоренной целью. В преднаsignificado разных портов углубляться не будем, пока достаточно понимать их роль в процессе общения в сети.
-
Сеансовый уровень — создает и управляет сеансами связи приложений. На этом уровне становится возможным взаимодействие приложений, отправка pedidoов служебного уровня. Для нас важно знать, что на этом уровне между двумя абонентами открывается сессия (session), с которой нам часто придется работать.
Сессия — сущность, которая создается при установке связи между двумя пользователями. В ней можно сохранять нужную нам информацию о юзере, об истории их взаимодействия. Важной деталью является то, что при остановке обмена информацией сессия не пропадает, а сохраняет свое состояние на протяжении установленного промежутка времени, поэтому пользователи могут продолжить обмен информацией после перерыва.
Si una aplicación se comunica con varios usuarios simultáneamente, se establece un número adecuado de conexiones y, por tanto, de sesiones. Cada sesión tiene un identificador único (ID) , que permite a la aplicación distinguir entre los usuarios con los que se produce la comunicación.
-
Capa de presentación : responsable de codificar/decodificar datos. Obviamente, si necesitamos enviar la cadena "Hola web" a otro usuario, primero se convierte (codifica) en código binario y solo luego se envía. Una vez que llega al destino, el mensaje se vuelve a convertir (decodifica) y el destinatario puede ver la cadena original. Estas acciones ocurren a nivel de presentación.
-
La capa de aplicación es la capa más interesante para nosotros. Permite que las aplicaciones interactúen con la red. En este nivel recibiremos, enviaremos mensajes, realizaremos solicitudes a servicios y bases de datos remotas.
Son muchos los protocolos que se utilizan a este nivel: POP3, FTP, SMTP, XMPP, RDP, SIP, TELNET y, por supuesto, HTTP/HTTPS. Un protocolo es un acuerdo universal al que nos adherimos al redactar mensajes. Definitivamente hablaremos sobre los protocolos HTTP/HTTPS por separado y con más detalle.
- Dirección IP: la dirección del suscriptor en la red;
- Puerto: dirección de aplicación de un suscriptor específico;
- La sesión es una entidad que existe durante toda la comunicación entre dos suscriptores;
- Los protocolos de aplicación (HTTP/HTTPS) son las reglas que nos guiarán a la hora de redactar y enviar mensajes.
GO TO FULL VERSION