Reklama
Internet jest niesamowity, myślę, że wszyscy możemy się z tym zgodzić. Ale czy kiedykolwiek usiadłeś i pomyślałeś, jak do cholery strona internetowa trafia do twojego komputera? Jakie technologie stoją na przykład za MakeUseOf? To znacznie więcej niż zwykła kolekcja plików HTML i obrazów.
Czytaj dalej, aby dowiedzieć się, co dokładnie dzieje się z uruchomieniem, hostingiem i serwowaniem strony internetowej do użytku, drodzy czytelnicy.
Sprzęt komputerowy
Zacznijmy od najbardziej podstawowego elementu hostingu witryny - sprzętu. Zasadniczo maszyny używane do hostowania witryny internetowej tak naprawdę nie różnią się od komputerów stacjonarnych, które masz w domu. Mają więcej pamięci, dyski zapasowe i często światłowodowe połączenia sieciowe - ale w zasadzie są takie same. W rzeczywistości każda stara maszyna może hostować witrynę internetową - to tylko przypadek, jak szybko będzie w stanie wysyłać strony do użytkowników.
Możesz przeczytać więcej tutaj o różne rodzaje hostingu Wyjaśnienie różnych form hostingu witryn internetowych [technologia wyjaśniona] Czytaj więcej
dostępny, od pojedynczej maszyny współdzielonej przez tysiące stron internetowych, z których każda płaci 5 USD miesięcznie, po w pełni dedykowany serwer zdolny do uruchamiania czegoś takiego jak MakeUseOf - co kosztuje tysiące dolarów miesięcznie.
System operacyjny
Większość maszyn z serwerami WWW działa w zoptymalizowany sposób pod Linuksem - choć istnieje duża liczba serwerów tam z systemem Windows, zwykle w środowiskach korporacyjnych, w których aplikacje internetowe są zbudowane na ASP lub dotNet. Od stycznia tego roku najpopularniejszą dystrybucją Linuksa do hostingu jest Debian, a następnie CentOS (w oparciu o RedHat), które można bezpłatnie pobrać i wypróbować samodzielnie - a każde z nich obsługuje około 30% wszystkich witryn. Google oczywiście obsługuje własny niestandardowy system Linux, a także własny niestandardowy system plików.
Oprogramowanie serwera WWW
To tutaj rzeczy naprawdę zaczynają się różnicować. Oprogramowanie serwera WWW to aplikacja, która odbiera przychodzące żądania i obsługuje strony lub pliki. Samo oprogramowanie serwera WWW jest w dużej mierze obojętne na język obsługiwanej strony - serwer Apache jest w stanie obsługiwać Python, PHP, Ruby lub dowolną liczbę różnych Języki; ale to nie jest uniwersalne. Obecny udział w rynku wskazuje, że Apache obsługuje około 65% najlepszych stron internetowych, Microsoft IIS 15%, a nginx 10%. Uważa się, że nginx lepiej radzi sobie z witrynami o wysokiej współbieżności - czyli tam, gdzie wiele tysięcy użytkowników może jednocześnie znajdować się na stronie - i jest w rzeczywistości używany tutaj w MakeUseOf.

Podczas ładowania strony internetowej otwierasz gniazdo - połączenie - między komputerem a serwerem witryny. Skomplikowany i długotrwały taniec do melodii HTTP rozpoczyna się następnie w przód i w tył żądań, danych i kodów stanu. Gdy poprosiłeś o tę stronę, nasz serwer odpowiedział 200 - OK, co znaczy "jasne, prosze"; jeśli odwiedziłeś wcześniej, Twoja przeglądarka może również zapytać „Hej, mam już kopię tej grafiki w pamięci podręcznej przeglądarki, czy naprawdę jej potrzebuję?”, na które nasz serwer odpowiedział 304 - Niezmodyfikowanylub „Nie, to świetnie, nie zmieniliśmy tego ani nic, po prostu użyj tego”.
Czasami okropny 404 Nie Znaleziono, ale nie muszę ci wyjaśniać tego kodu błędu. Jeśli kiedykolwiek się otworzyłeś Firebug Przewodnik dla amatorów dostosowywania projektu strony internetowej za pomocą FireBug Czytaj więcej lub w trybie programistycznym przeglądarki, będziesz zaskoczony, jak wiele dzieje się w przód iw tył - to nie jest proste „Daj mi tę stronę” - „OK, tutaj”, ale w rzeczywistości setki mniejszych interakcji.

Pliki statyczne i sieci dostarczania treści
Na wszystkich stronach istnieją pliki, które prawie nigdy się nie zmieniają. Rzeczy takie jak Javascript, CSS, obrazy, pliki PDF lub mp3. To się nazywa pliki statycznei aby je Ci dostarczyć, oprogramowanie serwera sieci Web musi po prostu pobrać plik i wysłać go. Łatwe, prawda? Nie tak szybko.
Niestety wysyłanie dużej liczby plików statycznych jest dość pracochłonnym zadaniem ze względu na rozmiar plików. Jeśli kiedykolwiek odwiedziłeś stronę internetową, na której możesz faktycznie usiąść i oglądać załadowane obrazy, to dlatego, że serwer sam dla siebie pobiera te pliki - po prostu nie są zoptymalizowane do tego typu praca. Zamiast tego duże strony internetowe przenoszą wszystkie te pliki statyczne na tak zwane „a” Sieć dostarczania treści - oddzielne serwery zoptymalizowane pod kątem śmiesznego szybkiego dostarczania plików statycznych w mgnieniu oka.
Osiągają to również poprzez fizyczną lokalizację serwerów w różnych lokalizacjach na całym świecie, które są względem siebie lustrzane, dzięki czemu dane mają mniejszą odległość do przebycia. W tej chwili, mimo że artykuł MakeUseOf, który czytasz, jest faktycznie przechowywany w Stanach Zjednoczonych, obrazy i Javascript pochodzą z miejsca znacznie bliższego za pośrednictwem lokalnej sieci CDN.
Treść dynamiczna - języki programowania WWW
Prawie wszystkie nowoczesne witryny mają zawartość dynamiczna pewnego rodzaju, czy to oznacza, że WordPress dodaje komentarze do postu na blogu lub Google wyświetla wyniki wyszukiwania. Aby strona była dynamiczna, potrzebne są języki programowania. Pisałem wcześniej o różne języki dostępne dla Ciebie Jakiego języka programowania się uczyć - programowanie siecioweDzisiaj przyjrzymy się różnym językom programowania sieci, które napędzają Internet. To czwarta część serii dla początkujących. W części 1 poznaliśmy podstawy ... Czytaj więcej (i wziąłem udział w gorących debatach dotyczących sugerowania, że PHP jest najlepszy). Niezależnie od tego, który język wybierzesz, działa on w połączeniu z warstwą oprogramowania serwera WWW, aby najpierw dynamicznie wygenerować zawartość strony, a następnie podać ją tobie.
Bazy danych
Za wszystkimi dynamicznymi stronami internetowymi znajdują się bazy danych - ogromne magazyny surowych danych, które umożliwiają nam dostęp do tych danych na różne sposoby. W tym celu wymagany jest osobny język programowania baz danych, najpopularniejszy z nich SQL (Structured Query Language) i jest wiele wariantów. Bazy danych zawierają różne tabele danych reprezentujące różne struktury danych - jedna może być listą artykułów; inny za komentarze do tych artykułów. Korzystając z SQL, możemy sortować, łączyć i prezentować te dane na różne sposoby.
Na przykład w WordPressie „post” składa się przynajmniej z tytułu i daty oraz prawdopodobnie pewnej faktycznej treści. Oddzielna tabela służy do przechowywania komentarzy do tego artykułu, a jeszcze inna tabela do przechowywania listy kategorii, a następnie jeszcze inny do przechowywania listy, które kategorie zostały przypisane do którego artykułu. Poprzez odsyłanie i pobieranie danych z nich wszystkich, WordPress gromadzi wszystkie potrzebne informacje dla określonej strony bloga, przed zastosowaniem motywu i przedstawieniem go Tobie za pośrednictwem serwera WWW oprogramowanie.

Systemy buforowania
Podawanie statycznych plików HTML jest dość łatwe pod względem obliczeniowym - serwer musi tylko pobrać plik - zawartość dynamiczną z drugiej strony wymaga dużo pracy, aby złożyć stronę razem z bazą danych i przetwarzaniem, które się na niej odbywa dane. System buforowania zatacza koło, tworząc te dynamiczne strony, a następnie zasadniczo zapisując je jako statyczne pliki HTML. Gdy ponownie pojawia się żądanie podania tej samej strony, nie trzeba jej ponownie obliczać, co przyspiesza działanie witryny.
Buforowanie jest szerokim terminem, który może oznaczać wiele rzeczy - CDN są rodzajem pamięci podręcznej; istnieją również pamięci podręczne bazy danych dla często zadawanych zapytań (pomyśl o WordPress pytającym o bazę danych tytuł bloga za każdym razem, gdy ktoś patrzy na Twój post - bo tak właśnie jest dzieje się). Pisałem wcześniej o tym, jak skonfigurować popularny System W3 Total Cache dla WordPress Jak skonfigurować różne ustawienia wtyczki Total Cache dla twojego bloga WordpressJakiś czas temu mówiłem o korzyściach z zainstalowania wtyczki W3TC na blogu Wordpress w celu przyspieszenia jej z różnymi buforowaniem, ale niektórzy czytelnicy byli, co zrozumiałe, trochę ostrożni ... Czytaj więcej , używane również tutaj w MakeUseOf. Twój przeglądarka ma również pamięć podręczną Wszystko, co musisz wiedzieć o pamięci podręcznej przeglądarki [MakeUseOf wyjaśnia]Ilekroć masz problem ze stroną internetową, jedną z pierwszych sugestii, które usłyszysz od działu IT, jest „spróbuj wyczyścić pamięć podręczną przeglądarki” oraz „i usunąć pliki cookie”. Więc co jest... Czytaj więcej - prawie wszystko można buforować.
Jak widać, w rzeczywistości ogromna ilość pracy i wiele technologii wiąże się z hostingiem strony internetowej. Nie oznacza to jednak, że nie możesz mieć własnego blog założony i uruchomiony w mniej niż godzinę Skonfiguruj swojego bloga za pomocą WordPress: najlepszy przewodnikChcesz założyć własny blog, ale nie wiesz jak? Zobacz WordPress, najpotężniejszą dostępną obecnie platformę blogów. Czytaj więcej . Problem zaczyna się od skalowania go do wielu tysięcy użytkowników.
Jakieś pytania? Zapytaj, a ja postaram się odpowiedzieć. Czy jesteś zaskoczony, ile wysiłku może poświęcić strona internetowa?
James ma licencjat z zakresu sztucznej inteligencji i jest certyfikowany przez CompTIA A + i Network +. Jest głównym programistą MakeUseOf i spędza wolny czas grając w paintball VR i gry planszowe. Buduje komputery od dziecka.