- Mari kita bicara sedikit tentang jaringan.
- Mari kita pertimbangkan struktur client-server dan arsitektur tiga tingkat.
- Mari kita lihat protokol HTTP/HTTPS.
- Mari pelajari semua yang perlu Anda ketahui tentang Maven.
- Mari kita bicara tentang servlet.
- Wadah servlet.
- Dan akhirnya - tentang MVC.
Bagian 1. Mari kita bicara sedikit tentang jaringan
Mari kita mulai dengan hal yang paling penting dan berbicara tentang dasar di mana semua jejaring sosial, layanan web dan aplikasi, pesan instan, dan situs sederhana dibangun - tentang jaringan ( dalam konteks rangkaian artikel ini, istilah "jaringan" berarti Internet Global ). Sebuah jaringan terdiri dari sejumlah besar komputer: mereka saling berhubungan dan mampu berkomunikasi. Penting untuk memahami bagaimana mereka melakukan hal ini, karena aplikasi web bertanggung jawab untuk mentransfer informasi dari satu komputer ke komputer lain.model jaringan OSI
Model OSI (Open Systems Interconnection) menciptakan pendekatan berlapis untuk membangun jaringan. Ini dengan jelas menunjukkan bagaimana dan pada tingkat apa anggota jaringan yang sama dapat berinteraksi satu sama lain. Secara total, model ini berisi 7 level:7 | Terapan |
6 | Perwakilan |
5 | Sidang |
4 | Mengangkut |
3 | Jaringan |
2 | Saluran |
1 | Fisik |
-
1. Tingkat fisik - di sini hukum fisika melakukan tugasnya, dan tugas manusia adalah menggunakan dan mengarahkannya untuk tujuannya sendiri. Misalnya membuat kabel dan meletakkannya ke anggota jaringan.
Kami tidak tertarik.
-
Lapisan data link - bertanggung jawab untuk mengirimkan data ke node jaringan dan membuat saluran transmisi data pada objek fisik.
Нам не интересен, если только нет желания писать прошивку для каналообразующей аппаратуры.
-
Сетевой уровень — для определения addressов отдельных пользователей сети и маршрутов к ним. На этом уровне стоит остановиться подробнее, а именно — на addressе пользователя в сети.
Он определяется специальным протоколом: самый распространённый — IPv4 (Internet Protocol version 4). Именно его нужно использовать веб-программисту для обращения к другому абоненту сети.
IPv4 состоит из четырех byteовых значений, разделенных точкой, например: 192.0.2.235. Стоит помнить, что значения byteовые, а значит, они лежат в пределах 0..255.
IP-address, в свою очередь, делятся на классы, и просто так присвоить себе красивую комбинацию циферок не получится, но так сильно углубляться мы не станем. Достаточно понимать, что IP-address — это уникальный идентификатор абонента в сети, по которому мы сможем к нему обратиться.
-
Транспортный уровень — занимается доставкой информации addressту. Для этого используются разные протоколы, которые нам пока не интересны. Гораздо больше нас интересует понятие, которое появляется на этом уровне, — port.
Порты отвечают за идентификацию конкретного applications на компьютере. Например, ты написал чат на Java, установил на 2 компа и хочешь отправить своему собеседнику. Твое сообщение упаковывается, отправляется по конкретному IP-addressу, доставляется твоему собеседнику, но его ПК не знает, что делать с полученной информацией, так How не понимает, Howое приложение должно обработать твое сообщение. Для этого и указываются порты при общении абонентов в сети.
Порт представляет собой число от 0 до 65535. Он добавляется к IP-addressу после двоеточия: 192.0.2.235:8080. Но нельзя использовать все порты из указанного диапазона: часть из них зарезервирована под операционную систему, еще часть принято использовать с конкретно оговоренной целью. В преднаmeaning разных портов углубляться не будем, пока достаточно понимать их роль в процессе общения в сети.
-
Сеансовый уровень — создает и управляет сеансами связи приложений. На этом уровне становится возможным взаимодействие приложений, отправка requestов служебного уровня. Для нас важно знать, что на этом уровне между двумя абонентами открывается сессия (session), с которой нам часто придется работать.
Сессия — сущность, которая создается при установке связи между двумя пользователями. В ней можно сохранять нужную нам информацию о юзере, об истории их взаимодействия. Важной деталью является то, что при остановке обмена информацией сессия не пропадает, а сохраняет свое состояние на протяжении установленного промежутка времени, поэтому пользователи могут продолжить обмен информацией после перерыва.
Jika suatu aplikasi berkomunikasi dengan beberapa pengguna secara bersamaan, jumlah koneksi yang sesuai, dan sesi, akan dibuat. Setiap sesi memiliki pengidentifikasi unik (ID) , yang memungkinkan aplikasi membedakan pengguna yang melakukan komunikasi.
-
Lapisan presentasi - bertanggung jawab untuk pengkodean/dekode data. Jelasnya, jika kita perlu mengirim string “Halo web” ke pengguna lain, string tersebut terlebih dahulu diubah (dikodekan) menjadi kode biner, dan baru kemudian dikirim. Setelah mencapai tujuan, pesan diubah kembali (didekode) dan penerima dapat melihat string aslinya. Tindakan ini terjadi pada tingkat presentasi.
-
Lapisan aplikasi adalah lapisan yang paling menarik bagi kami. Ini memungkinkan aplikasi untuk berinteraksi dengan jaringan. Pada level ini kita akan menerima, mengirim pesan, membuat permintaan ke layanan dan database jarak jauh.
Ada banyak protokol yang digunakan pada level ini: POP3, FTP, SMTP, XMPP, RDP, SIP, TELNET dan, tentu saja, HTTP/HTTPS. Protokol adalah perjanjian universal yang kami patuhi saat menulis pesan. Kami pasti akan membicarakan protokol HTTP/HTTPS secara terpisah dan lebih detail.
- Alamat IP—alamat pelanggan di jaringan;
- Port — alamat aplikasi pelanggan tertentu;
- Sesi adalah entitas yang ada di seluruh komunikasi antara dua pelanggan;
- Protokol aplikasi (HTTP/HTTPS) adalah aturan yang akan memandu kita saat membuat dan mengirim pesan.
GO TO FULL VERSION