Нечасто випадає можливість озирнутися назад і побачити, як далеко ви зайшли. Коли Unihost тільки починався, у нас був лише один сервер, на якому ми розміщували веб-сайти наших клієнтів. Грубо кажучи, у нас був найпоширеніший веб-хостинг.
Це було 17 років тому. У наступному сезоні я планую поговорити про те, як ми зробили наш хостинг дійсно особливим.
Сервери
Основою будь-якого хостингу є сервер і його компоненти. Навіть найкраще у світі програмне забезпечення не може змусити сайт швидко працювати на недорогому обладнанні. Тому, коли мова зайшла про серверну структуру віртуального хостингу Unihost, ми приділили їй особливу увагу.
Інфраструктура
Одного сервера для всіх потреб веб-хостингу просто недостатньо. Поточна структура спільного хостингу Unihost побудована на кластерах із трьох окремих серверів — веб-сервера, сервера баз даних і резервного сервера.
- Веб-сервер приймає запити від користувачів і будує сторінки сайтів;
- Сервер бази даних обробляє запити до бази даних і передає дані на веб-сервер;
- Сервер резервного копіювання знаходиться в іншому дата-центрі (точніше, зовсім в іншому стані), і кожні 24 години отримує свіжу копію даних з інших серверів.
Оскільки завдання розподілені між серверами, сайти працюють набагато швидше. І клієнти можуть не хвилюватися, що ці сайти зникнуть, тому що у нас завжди є свіжа резервна копія. Ми зберігаємо кілька резервних версій (за останній місяць, тиждень або день) і відновлюємо веб-сайти за запитом.
Ми використовуємо цей дизайн з 2007 року. Відтоді було кілька незначних змін, але основна ідея залишилася незмінною.
Дискова підсистема
В основі веб-серверів і серверів баз даних лежить RAID-масив NVMe SSD-накопичувачів 1,2 ТБ. Згідно з синтетичними тестами, він в 10-15 разів швидше HDD і навіть перевершує звичайні SSD-накопичувачі завдяки новому інтерфейсу. У реальному світі веб-сайти працюють приблизно в 5 разів швидше, ніж на серверах з жорстким диском.
На сервері резервного копіювання ми використовуємо масив із 10 жорстких дисків корпоративного класу загальною ємністю 60 ТБ. Використовувати SSD для таких обсягів поки недоцільно, тим більше, що HDD тут задовольняє всі наші потреби.
ЦП і оперативна пам’ять
Незважаючи на те, що запити файлів і запити даних потрапляють на різні сервери, для їх обробки все одно потрібна більша потужність процесора. Інакше на хостингу сайти будуть працювати повільно навіть не дивлячись на SSD-накопичувачі.
На всіх серверах хостингу встановлені процесори Intel Xeon E3-1270v6 з архітектурою Kaby Lake і 64 ГБ оперативної пам’яті (32 ГБ на резервному сервері). Сервери підключені до Інтернету через канали 1 Гбіт/с, які напряму з’єднують їх з основними європейськими маршрутами трафіку.
Програмне забезпечення
Якби єдиним, що робить спільний хостинг Unihost особливим, було апаратне забезпечення, ми б ніколи не змогли подолати конкуренцію. Тому, окрім сучасних комплектуючих, ми також використовуємо спеціальне програмне забезпечення.
ОС
Сервери хостингу працюють на CloudLinux — ОС, спеціально розробленій для інфраструктури хостингу. CloudLinux розміщує всі облікові записи у віртуальних контейнерах LVE, що схоже на принцип роботи VPS. Як наслідок, ресурси кожного облікового запису обмежені, і ніхто не може використовувати час процесора, який належить комусь іншому.
На хостингах з іншими ОС це велика проблема, тому що великі сайти можуть зайняти тимчасово залишені ресурси. І коли ці ресурси потрібні іншим веб-сайтам, це призводить до сповільнення, збоїв і загальних проблем.
Панель керування
На початку ми мали вибір між cPanel та ISPmanager: cPanel була дорожчою, але красивішою та легшою для вивчення; ISPmanager був дешевшим, більш функціональним, але менш дружнім. Зрештою ми вибрали обидва — спочатку запустили хостинг з ISPmanager, а потім зробили преміум-хостинг з cPanel. З часом cPanel став дешевшим, і ми змогли знизити ціни, тож тепер веб-хостинг cPanel навіть трохи дешевший, ніж хостинг на основі ISPmanager. Загалом, вибір панелі керування на Unihost – справа смаку.
Система кешування
Кеш — це готова копія популярного контенту. Сторінки в кеші не потрібно перебудовувати з файлів і баз даних, ви можете відразу відправити їх користувачеві. Таким чином, кеш-пам’ять економить час і процесорний час, але створює більший тиск на системи зберігання.
Коли хостинг Unihost ще був на жорсткому диску, наша система кешування була досить примітивною. Повільні жорсткі диски зробили кеш практично марним.
Тому при переході на SSD ми вирішили повністю переробити систему кешування Unihost. Ми хотіли зробити щось особливе, те, чого не було у конкурентів. У якийсь момент ми подумали про Google PageSpeed — систему для аналізу та оптимізації продуктивності сайту. Тепер до всіх кешованих сторінок ми застосовуємо Google Pagespeed, який прискорює веб-сайти на 30-50%.
Підтримка
Навіть найкращий у світі хостинг марний, якщо він не забезпечує належної підтримки. Ось чому ми приділили багато уваги системі підтримки спільного хостингу Unihost.
Спочатку все вирішувалося в режимі реального часу через чат або по телефону. Але незабаром ми зрозуміли, що є завдання, які вирішувати таким чином незручно — наприклад, очищення сайту від вірусів може зайняти багато часу. Так з’явилася тикет-система, а сама підтримка розділилася на дві лінії – підтримка клієнтів і техпідтримка.
Нещодавно ми вирішили поекспериментувати і зробити прості завдання системи квитків. Тепер, щоб перевстановити WordPress, змінити версію PHP на хостингу або відключити систему кешування, потрібно просто написати в чат на Unihost.com. Але щоб відновити веб-сайт після хакерської атаки або виконати інші великі завдання, вам все одно доведеться створити квиток.
Підтримка Unihost працює 24/7 і завжди готова допомогти вам у чаті, телефоном або через систему тикетів.
17 років на ринку навчили нас, що жоден план не витримає контакту з реальністю. Вам потрібно постійно змінюватися, розвиватися і виконувати свою роботу краще, ніж ви це робили вчора. Це єдиний шлях до успіху. Тому ми не збираємося зупинятися — Unihost постійно працює над тим, щоб надати вам нові функції, кращі ціни або, принаймні, цікаве читання в нашому блозі!