
- Kami akan bercakap sedikit tentang rangkaian.
- Kami akan memeriksa pelayan pelanggan dan seni bina tiga peringkat.
- Kami akan meneroka protokol HTTP/HTTPS.
- Kami akan mempelajari semua yang anda perlu tahu tentang Maven.
- Kita bercakap tentang pembalakan.
- Mengenai bekas servlet.
- Dan akhirnya, mengenai MVC.
Bahagian 1. Kita akan bercakap sedikit tentang rangkaian.
Mari kita mulakan dengan perkara yang paling penting dengan bercakap tentang perkara yang dibina pada setiap rangkaian sosial, perkhidmatan web dan aplikasi web, messenger segera dan tapak web mudah — rangkaian (dalam konteks siri artikel ini, istilah "rangkaian" bermaksud Internet ) . Rangkaian ini terdiri daripada sebilangan besar komputer: ia saling berkaitan dan dapat berkomunikasi. Adalah penting untuk memahami cara mereka melakukan ini, kerana aplikasi web menghantar maklumat dari satu komputer ke komputer yang lain.model OSI
Model Open Systems Interconnection (OSI) mencipta pendekatan berperingkat untuk membina rangkaian. Ia jelas menunjukkan bagaimana dan pada lapisan entiti rangkaian yang sama boleh berinteraksi antara satu sama lain. Secara keseluruhannya, model ini mengandungi 7 lapisan:7 | Permohonan |
6 | Persembahan |
5 | Sesi |
4 | Pengangkutan |
3 | Rangkaian |
2 | Pautan data |
1 | Fizikal |
-
Lapisan fizikal — Lapisan ini memperkatakan undang-undang fizik dan cara menggunakannya untuk tujuan kita. Contohnya, mencipta kabel dan meletakkannya kepada entiti dalam rangkaian.
Lapisan ini tidak menarik minat kami.
-
Lapisan pautan data — Lapisan ini bertanggungjawab untuk menghantar data ke nod rangkaian dan mencipta saluran penghantaran data untuk objek fizikal.
Lapisan ini tidak menarik minat kami melainkan anda ingin menulis perisian tegar untuk perkakasan yang mewujudkan pautan data.
-
Lapisan rangkaian — Lapisan ini adalah untuk menentukan alamat pengguna rangkaian individu dan laluan ke mereka. Terdapat nilai dalam mempelajari lebih lanjut tentang butiran lapisan ini, iaitu, alamat rangkaian.
Alamat rangkaian ditakrifkan oleh protokol khas: yang paling biasa ialah IPv4 (Internet Protocol versi 4). Ini ialah protokol yang perlu digunakan oleh pengaturcara web untuk menghubungi pengguna rangkaian lain.
Alamat IPv4 terdiri daripada empat nilai bait yang dipisahkan oleh noktah, contohnya: 192.0.2.235. Anda harus ingat bahawa nilai ini ialah bait, yang bermaksud bahawa ia terletak dalam julat 0..255.
Alamat IP, seterusnya, dibahagikan kepada kelas. Kita tidak boleh memberikan kombinasi nombor yang indah kepada diri kita sendiri, tetapi kita tidak akan pergi jauh di sini. Ia cukup untuk memahami bahawa alamat IP mengenal pasti pengguna rangkaian secara unik dan boleh digunakan untuk menghubungi pengguna tersebut.
-
Lapisan pengangkutan — Lapisan ini mengendalikan penghantaran maklumat kepada penerima. Pelbagai protokol digunakan untuk mencapai ini. Buat masa ini, kami tidak berminat dengan mereka. Kami lebih berminat dengan konsep port , yang muncul pada lapisan ini.
Port bertanggungjawab untuk mengenal pasti aplikasi tertentu pada komputer. Sebagai contoh, katakan anda menulis apl sembang dalam Java, memasangnya pada 2 komputer dan ingin menghantar mesej kepada rakan anda. Mesej anda dibungkus, dihantar ke alamat IP tertentu dan dihantar kepada rakan anda, tetapi komputernya tidak tahu apa yang perlu dilakukan dengan maklumat yang diterima, kerana ia tidak memahami aplikasi mana yang harus memproses mesej anda. Apabila entiti rangkaian berkomunikasi, port digunakan untuk menunjukkan aplikasi mana yang harus memproses maklumat.
Port ialah nombor dalam julat dari 0 hingga 65535. Ia ditambah pada alamat IP selepas bertindih: 192.0.2.235:8080 . Tetapi anda tidak boleh menggunakan semua port dalam julat yang ditentukan: sesetengah daripadanya dikhaskan untuk sistem pengendalian, yang lain biasanya digunakan untuk tujuan tertentu. Kami tidak akan menyelidiki tujuan pelabuhan yang berbeza. Buat masa ini, sudah cukup untuk memahami peranan mereka dalam proses komunikasi di rangkaian.
-
Lapisan sesi — Lapisan ini mencipta dan mengurus sesi komunikasi. Pada lapisan ini, aplikasi boleh berinteraksi, menghantar permintaan peringkat perkhidmatan. Apa yang perlu kita ketahui ialah pada lapisan ini satu sesi dibuka antara dua pengguna, dan kita perlu bekerja dengan sesi tersebut.
Sesi ialah entiti yang dibuat apabila sambungan diwujudkan antara dua pengguna. Ia boleh menyimpan maklumat yang diperlukan tentang pengguna dan tentang sejarah interaksi dengan pengguna. Perincian penting ialah apabila pertukaran maklumat berhenti, sesi itu tidak hilang. Sebaliknya, ia mengekalkan keadaannya untuk tempoh masa yang ditetapkan, jadi pengguna boleh terus bertukar maklumat selepas rehat.
Jika aplikasi berkomunikasi dengan beberapa pengguna pada masa yang sama, maka bilangan sambungan yang sepadan (dan dengan itu sesi) diwujudkan. Setiap sesi mempunyai pengecam unik (ID) , yang membolehkan aplikasi membezakan antara pengguna yang berkomunikasi dengannya.
-
Lapisan pembentangan — Lapisan ini bertanggungjawab untuk pengekodan/penyahkodan data. Jelas sekali, jika kita perlu menghantar rentetan "Hello web" kepada pengguna lain, ia mula-mula ditukar menjadi (dikodkan sebagai) kod binari, dan hanya kemudian ia dihantar. Apabila sampai kepada penerima, mesej itu ditukar kembali (dinyahkod), dan penerima boleh melihat rentetan asal. Tindakan ini berlaku pada lapisan pembentangan.
-
Lapisan aplikasi adalah lapisan yang paling menarik untuk kami. Ia membolehkan aplikasi berkomunikasi dengan rangkaian. Pada lapisan ini, kami menerima dan menghantar mesej, dan membuat permintaan kepada perkhidmatan dan pangkalan data jauh.
Terdapat banyak protokol yang digunakan pada lapisan ini: POP3, FTP, SMTP, XMPP, RDP, SIP, TELNET dan, sudah tentu, HTTP/HTTPS. Protokol ialah perjanjian sejagat yang kami patuhi semasa berkomunikasi. Kami pasti akan menyediakan perbincangan terperinci yang berasingan tentang HTTP/HTTPS.

- Alamat IP — Alamat pengguna dalam rangkaian
- Port — Alamat aplikasi pengguna tertentu
- Sesi — Entiti yang wujud sepanjang tempoh komunikasi antara dua pengguna
- Protokol aplikasi (HTTP/HTTPS) — Ini adalah peraturan yang akan kami ikuti semasa mengarang dan menghantar mesej.
DNS (Sistem Nama Domain)
Seperti yang telah kita pelajari, setiap pengguna rangkaian mempunyai alamat yang unik. Jika kita bercakap tentang aplikasi, maka alamat uniknya ialah IPv4-address:port . Jika anda tahu alamat ini, anda boleh terus mengakses aplikasi tersebut. Bayangkan bahawa kami menulis aplikasi web yang memaparkan purata suhu udara di semua negara dalam masa nyata. Kami mengerahkannya pada pelayan dengan alamat 226.69.237.119, pada port 8080. Untuk dapat menerima maklumat daripada kami, pengguna mesti memasukkan 5 nombor dalam penyemak imbas: 226.69.237.119:8080. Orang ramai tidak suka menghafal set nombor: ramai di antara kita tidak dapat mengingati lebih daripada dua nombor telefon. Itulah sebabnya Sistem Nama Domaintelah direkacipta. Kita boleh mencipta "alias" untuk alamat kita, contohnya, world-temperature.com. Daripada mencari kami menggunakan alamat yang terdiri daripada lima nombor yang sukar diingat, pengguna boleh memasukkan nama domain kami dalam bar alamat penyemak imbas. Terdapat pelayan DNS yang memetakan nama domain ke alamat sebenar. Contohnya, apabila pengguna memasuki codegym.cc dalam penyemak imbas, permintaannya dihantar ke pelayan DNS, yang menukarnya kepada alamat sebenar.
GO TO FULL VERSION