Оставаясь на нашем сайте, Вы даете согласие на использование нами Cookie-файлов и иных технологий по сбору статистических сведений о посетителях, а также соглашаетесь с нашей Политики конфиденциальности
Согласен
vk pixel
Архитектура простых сайтов

Блог

06. 02. 2017г.
2
Введение.

Этот пост, в противоположность предыдущему, будет не для программистов, а скорее для тех, кто в Интернет-технологиях - пользователь. Итак...

Из чего состоит и как работает сайт? Немного необычный (хотя и достаточно известный в узких кругах) взгляд в этом посте, и он заключается в том, что сайт - это функция. Наподобие математической, y = f(x). Если не вдаваться в подробности, то для обычного пользователя сети Интернет, вот эта самая f - и есть сайт, в то время как x - это строка запроса в браузере, а y - ответ от сайта, который в нем же и отображается.

Компоненты и работа сервера, на котором работают сайты.

Если смотреть "с высоты птичьего полета", сайт состоит из следующих компонент, в порядке их вступления в дело на сервере, где размещен сайт (хостинг):
1. Сервер статики. Статика - это файлы, содержимое которых не зависит от запроса (изображения, файлы стилей для контента, скриптов обработки пользовательских событий в браузере, вложенные документы). Для них ставят быстрые серверные приложения, и чаще всего это многим известный Nginx.
2. Сервер, запускающий код сайта. Чаще всего это Apache - он умеет запускать код, предварительно сообщив ему характеристики запроса (ту самую строку запроса из браузера скажем).
3. Собственно, программный код сайта (очень распространен язык PHP), о которым мы поговорим чуть далее и подробнее. Он в ответ на запрос генерирует HTML, отображаемый (как называют этот процесс программисты - рендеринг, от английского rendering) в браузере клиента. Этот код часто взаимодействует с базой данных.
4. База данных - хранилище данных, чаще всего MySQL. В базе данных удобно хранить перечисляемые объекты, например, записи новостей или записи о товарах, записи о зарегистрированных пользователях и их заказах. База данных позволяет быстро получать различные срезы перечисляемых объектов (по определенному признаку, например - по категории).

MySQL

За один запрос программный код может несколько раз сходить в базу данных для выполнения различной логики, и это составляет основную нагрузку на сервер. Чем больше логики, чем больше данных в ней задействовано, тем производительней должны быть характеристики выбранного тарифного плана хостинга.

Об устройстве программного кода и системах управления контентом (CMS).

Системы управления контентом (Content Management Systems) - это заготовленные заранее сайты, как минимум, с уже готовыми функциями администрирования контента и методами работы по сохранению/извлечению его из базы данных.
Все они отличаются, в первую очередь:
1. Набором функций: как можно организовать контент, какие типы уже заготовлены (новости, товары, и тому подобное), какие технические возможности он предоставляет (резервное копирование например).
2. Внешним видом административной и публичной части. Для публичной части возможно выбрать как эксклюзивный дизайн (по заказу), так и шаблонные варианты (которые в большинстве случаев можно до некоторой степени поменять). Вид административного интерфейса обычно не меняют, но от него так же часто требуется некоторое удобство. Например, корректная работа в мобильных браузерах.
3. Ценой. Существуют как платные системы управления контентом (например, многофункциональный 1С-Битрикс, который хорошо подходит для Интернет-магазинов), так и бесплатные - многим известный Wordpress (который хорошо подходит для одностраничных или сайтов, где основной упор на текстовом контенте).
Разные CMS в своих "внутренностях" (программном коде) устроены сильно по-разному. Это связанно и со внешним видом, и с функциональностью.

Заключение.

В этом обзорном посте мы неглубоко рассмотрели как работают некоторые несложные сайты. Существуют и отличные от описанного выше способы работы серверов. Так, достаточно молодая технология Node.JS работает иначе - там каждый запрос не обрабатывается новым экземпляром программного кода, а обрабатывает поток событий (различные запросы) в одном цикле. Это удачное решение не столько для веб-сайтов, сколько для веб-приложений (требующих совместной работы - например, одновременное онлайн-редактирование документов). Но историю об этом мы прибережем на будущее :)

2 комментария
Arsenwrown
11.02.2017
подскажите пожалуйста на каком движке сделан этот сайт
17.02.2017
Добрый день! Наш сайт под управлением CMS 1C-Битрикс.
Назад
В корзине 0 товаров на 0 р.