Ընթերցողների համար տանը. Այս գլուխն ընդգրկված է How the Internet Works տեսանյութում
Այս գլուխը ներշնչված է Howեսիկա ՄաքՔելարի (http://web.mit.edu/jesstess/www/) "How the Internet works"(«Ինչպես է աշխատում ինտերնետը») զրույցից:
Մենք գրազ ենք գալիս, որ դուք ամեն օր ինտերնետ եք օգտագործում: Բայց գիտե՞ք իրականում, թե ինչ է պատահում, երբ ձեր զննարկչի մեջ մուտքագրում եք https://djangogirls.org- ի նման հասցե և սեղմում enter
:
Առաջին բանը, որ դուք պետք է հասկանաք, այն է, որ կայքը բաղկացած է կոշտ սկավառակի/ hard disk -ի վրա պահված մի շարք ֆայլերից, ինչպես ձեր ֆիլմերը, երաժշտությունը կամ նկարները: Այնուամենայնիվ, կա մեկ առանձնահատկություն, որը հատուկ է միայն կայքերին. Դրանք պարունակում են համակարգչային կոդ, որը կոչվում է HTML:
Եթե դուք ծանոթ չեք ծրագրավորմանը, սկզբում դժվար կլինի հասկանալ HTML- ը, բայց ձեր վեբ բրաուզերները (օրինակ ՝ Chrome, Safari, Firefox և այլն) սիրում են այն: Վեբ բրաուզերները նախատեսված են հասկանալու այս կոդը, հետևելու նրա հրահանգներին և ներկայացնելու այն ֆայլերը, որոնցից կազմված է ձեր կայքը, ճիշտ այնպես, ինչպես ցանկանում եք:
Ինչպես ցանկացած ֆայլ, HTML ֆայլերը նույնպես պետք է պահենք ինչ-որ տեղ մեր կոշտ սկավառակի/hard disk-ի վրա: Ինտերնետի համար մենք օգտագործում ենք հատուկ հզոր համակարգիչներ, որոնք կոչվում են servers/սերվերներ: Նրանք չունեն էկրան, մկնիկ կամ ստեղնաշար, քանի որ նրանց հիմնական նպատակը տվյալների պահպանումն ու սպասարկումն է: Այդ պատճառով նրանց անվանում են servers/սերվեր , քանի որ դրանք ձեզ ծառայություն են մատուցում:
Շատ լավ, բայց ուզում եք իմանալ, թե ինչ տեսք ունի ինտերնետը, ճի՞շտ է:
Մենք նկարեցինք նկար ձեզ համար: Այն այսպիսի տեսք ունի.
Կարծես խառնաշփոթ է, չէ՞: Իրականում դա միացված մեքենաների ցանց է (վերոհիշյալ servers/սերվերները): Հարյուր հազարավոր մեքենաներ: Շատ ու շատ կիլոմետրեր ճոպաններ/cables ամբողջ աշխարհում: Կարող եք այցելել սուզանավերի մալուխային քարտեզի/Submarine Cable Map կայք (http://submarinecablemap.com/) ՝ տեսնելու, թե որքան բարդ է ցանցը: Ահա կայքի սքրինշոթը.
Դա զարմանալի է, այնպես չէ՞: Այնուամենայնիվ, հասկանալի է, որ հնարավոր չէ յուրաքանչյուր մեքենա մետաղալարով միացնել ինտերնետին: Այսպիսով, ցանկալի մեքենային հասնելու համար (օրինակ,մեկը https://djangogirls.org որտեղ պահպանվում է), մենք պետք է հարցումը փոխանցենք շատ այլ մեքենաների միջով:
Այն պետք է ունենա նման տեսք:
Պատկերացրեք, որ երբ մուտքագրեք https://djangogirls.org, դուք նամակ եք ուղարկում, որում ասվում է. «Հարգելի Django Girls, ես ուզում եմ տեսնել djangogirls.org կայքը: Ուղարկեք այն ինձ, խնդրում եմ»:
Ձեր նամակը գնում է ձեզ ամենամոտ փոստային բաժանմունք: Այնուհետև այն ուղարկվում է մեկ ուրիշին, որը մի փոքր ավելի մոտ է հասցեատիրոջը, իսկ հետո հաջորդին և այլն, մինչև այն հասցվի իր նպատակակետին: Միակ յուրահատկությունն այն է, որ շատ նամակներ (*data packets/տվյալների փաթեթներ *) մեկ հասցեով ուղարկելիս նրանցից յուրաքանչյուրը կարող է անցնել բոլորովին այլ փոստային բաժանմունքների (routers/երթուղիչների) միջով: Դա կախված է նրանից, թե ինչպես են դրանք բաշխվում յուրաքանչյուր գրասենյակում:
Ահա թե ինչպես է, այն աշխատում. Դուք հաղորդագրություններ եք ուղարկում և սպասում պատասխանի: Իհարկե, թղթի և գրիչի փոխարեն օգտագործվում են տվյալների բայթեր, բայց գաղափարը նույնն է:
Փողոցի, քաղաքի, փոստային կոդի և երկրի անունների փոխարեն մենք օգտագործում ենք IP հասցեներ: Ձեր համակարգիչը նախ խնդրում է DNS- ին (Domain Name System/Դոմեյն անունների համակարգ) djangogirls.org- ը թարգմանել IP հասցեի: Սա գործում է հին հեռախոսների գրքերի նման, որտեղ դուք կարող եք փնտրել այն մարդու անունը, ում հետ ցանկանում եք կապվել, և գտնել նրա հեռախոսահամարը և հասցեն:
Նամակ ուղարկելիս այն պետք է ունենա որոշակի բնութագրեր, որպեսզի այն ճիշտ առաքվի ՝ հասցե, կնիք և այլն: Դուք նաև օգտագործում եք լեզու, որը ստացողը հասկանում է, այնպես չէ՞: Նույնը վերաբերում է data packets/տվյալների փաթեթներին, որոնք դուք ուղարկում եք կայքը տեսնելու համար: Մենք օգտագործում ենք HTTP (Hypertext Transfer Protocol) կոչվող արձանագրություն:
Հետեւաբար, հիմնականում, երբ կայք ունեք, պետք է ունենաք նաև սերվեր (մեքենա)/server (machine), որտեղ այն գտնվում է: Երբ server/սերվերը ստանում է մուտքային request/հարցում (նամակով), այն հետ է ուղարկում ձեր կայքը (մեկ այլ նամակով):
Քանի որ սա Django ձեռնարկ է, կարող եք հարցնել, թե ինչ է անում Django- ն: Պատասխան ուղարկելիս միշտ չէ, որ ցանկանում եք նույն բանը ուղարկել բոլոր հասցեատերերին: Շատ ավելի լավ է, եթե ձեր նամակները անձնավորված լինեն, հատկապես այն մարդու համար, ով հենց նոր է գրել ձեզ, այնպես չէ՞: Django- ն օգնում է ձեզ ստեղծել այս անհատականացված, հետաքրքիր նամակները: :)
Բավական է խոսելը ՝ ստեղծագործելու ժամանակն է: