Коли ви зробили сайт, він у вас є – але сайт, який живе лише на вашому власному комп’ютері, схожий на лист, який ви написали і лишили в шухляді столу. Щоб його прочитав хтось інший, лист треба доставити. Cloudflare – це, понад усе, служба доставки для сайтів.
Але щоб відчути, чому це важливо, варто уявити, як усе відбувається зазвичай і від якої тихої мороки вона вас позбавляє.
Де сайт насправді «живе»
Уявіть, що ви щось спекли і хочете, щоб його скуштували люди з усього світу. Старий спосіб – єдиний торт стоїть у вас на кухні. Кожен, хто хоче шматочок, мусить доїхати до вашої кухні, зачекати, доки ви відріжете, і поїхати назад додому. Сусід із-за стіни отримає свій шматок швидко. А хтось із протилежного боку планети чекатиме дуже довго – і якщо надто багато людей прийде водночас, ваша одна маленька кухня не впорається, і все сповільниться до повзання.
Сайт працює так само. Він живе на сервері – насправді просто на комп’ютері, який стоїть десь у світі й видає копії ваших сторінок кожному, хто попросить. Якщо цей комп’ютер у Німеччині, а ваш читач в Австралії, кожен клік мусить подолати шлях аж до Німеччини і назад. Далеко означає повільно.
То що таке «сервер» насправді?
Сервер – не якась особлива чи таємнича машина. Це звичайний комп’ютер, уся робота якого – просто стояти, завжди увімкненим, чекати на запити («будь ласка, надішли мені оту сторінку») і відповідати на них. Ваш ноутбук міг би бути сервером. Різниця лише в тому, що справжній сервер тримають увімкненим удень і вночі в спеціально збудованому приміщенні, з надійним живленням і товстим інтернет-каналом, тож він ніколи не засинає і завжди готовий відповісти.
Cloudflare тримає копію поруч із кожним
А тепер уявіть натомість, що тієї миті, коли ваш торт готовий, точнісінько така сама свіжа копія тихо з’являється на кухні в кожному великому місті – у Токіо, Сан-Паулу, Берліні, Мумбаї. Тепер той, хто хоче шматочок, просто йде до найближчої кухні. Ніхто не їде далеко. Ніхто не чекає.
Це і є суть того, що робить Cloudflare. У неї є комп’ютери в сотнях міст, і в кожному з них вона тримає копію вашого сайту. Коли хтось заходить, його обслуговує місто, найближче саме до нього. Читачеві в Австралії відповідають з Австралії; читачеві в Німеччині – з Німеччини. Сторінка приходить майже миттєво, у будь-якій точці Землі.
Уявіть читача далеко від того місця, де живе ваш сайт, і подивіться, як запит справді мандрує. Перемикайтеся між двома варіантами й натискайте Send the request: з одним далеким домом кожен клік перетинає світ і повертається; з копією в кожному місті тому самому читачеві відповідають із сусідніх дверей – і ви можете побачити, наскільки коротшою стає ця подорож.
your request hops clear across the world to the one server – and all the way back
Слова, якими це називають: «edge», «CDN», «anycast»
Для ідеї, яку ви щойно зрозуміли, є три жаргонні слівця – і тепер, коли ідея вже ваша, слова даються легко.
- Edge (англійською «край») – ті сотні найближчих комп’ютерів, що стоять на «краях» мережі, поруч зі справжніми людьми, а не одна машина посередині.
- CDN (Content Delivery Network, «мережа доставки контенту») – уся ця будова з копіями, розкиданими по світу так, щоб кожного відвідувача обслуговували поблизу. Оце й усе, що означають ті літери.
- Anycast – хитрий прийом, який автоматично скеровує кожного відвідувача до найближчої копії, і ні йому, ні вам не треба нічого вибирати. Ви один раз просите сайт, а мережа тихо передає вас до найближчої кухні.
Ви публікуєте раз – воно розходиться всюди
А ось частина, яка здається майже надто легкою. Ви не налаштовуєте ті сотні комп’ютерів. Ви передаєте свій сайт Cloudflare один раз – однією командою – і Cloudflare за лічені секунди сама розносить його копії по всіх містах. Цю маленьку програму називають Worker (англійською «робітник»), бо це і є невеликий робітник, який запускає ваш сайт у кожній точці. Ви написали його раз – тепер він працює всюди водночас.
А оскільки ім’я вашого сайту (його домен, як-от miron.blog) можна зареєструвати там-таки,
в одному місці, увесь шлях – від «у мене є сайт» до «будь-хто у світі може швидко його
відкрити» – забирає хвилини, а не дні.
Важка невидима робота, яку вона робить за вас
Це тихий подарунок, і на ньому варто пригальмувати, бо саме на це ви інакше витратили б місяці навчання.
Тримати швидкий і безпечний сайт власноруч означає борюкатися з довгим списком глибоко технічних речей: стискати сторінки, щоб вони швидше долали шлях; розмовляти найновішими й найшвидшими мовами, які розуміють браузери; відганяти нескінченних роботів, що обмацують кожен сайт у пошуках слабкого місця; тримати з’єднання кожного відвідувача приватним і захищеним. Кожна з цих речей – окреме ремесло. Люди роками вчаться робити їх добре.
Cloudflare робить усе це за вас, автоматично, – а ви навіть не мусите вивчати їхні назви. Ви отримуєте сайт, який швидкий, сучасний і безпечний, і вам просто ніколи не довелося дізнаватися, як саме.
Для допитливих: що саме вона мовчки бере на себе
Якщо колись почуєте ці терміни – ось вони. І вся суть саме в тому, що вам не треба їх розуміти, щоб отримувати з них користь:
- Стиснення (Brotli, zstd) – зменшення сторінок, щоб вони швидше долали шлях, як вакуумне пакування перед відправкою.
- Сучасні протоколи доставки (HTTP/2, HTTP/3, QUIC, 0-RTT) – новіші, швидші способи розмови між браузером вашого читача і сервером, які прибирають зайві оберти туди-сюди.
- Безпека (HTTPS) – замикання кожного з’єднання, щоб те, що йде між сайтом і відвідувачем, ніхто посередині не міг ані прочитати, ані підмінити. Саме тому в рядку адреси видно маленький замочок.
- Фільтрація ботів – розпізнавання і відсіювання роїв автоматичних програм, які постійно штурхають кожен сайт, щоб справжні люди проходили безперешкодно.
Чому це важливо: автор цього блогу колись витратив цілий рік, вручну налаштовуючи сервер так, щоб той робив бодай частину цього. Cloudflare дає вам це безкоштовно, з першого дня, просто як побічний ефект своєї присутності.
На практиці: як саме ця сторінка потрапила в мережу
Якщо ви з тих допитливих, кому хочеться справді зробити це самому, – ось увесь шлях, яким цей блог пройшов від «теки на ноутбуці» до «сайту, який може відкрити будь-хто у світі», від початку до кінця. Нічого складного тут немає. Здебільшого це очікування, доки щось доробиться, а кожен крок – одна коротка вказівка.
Проведіть мене крок за кроком
1. Застовпіть ім’я для свого сайту. Це ім’я і є ваш домен – miron.blog,
your-name.com, будь-яке, яке вам до вподоби. Ви орендуєте його (кілька доларів на рік)
просто в панелі керування Cloudflare, там-таки, де живе все інше. Хвилина набирання – і ім’я
ваше.
2. Спершу зберіть сайт на власному комп’ютері. Публічного тут ще нічого немає. Ви робите свої сторінки локально й дивитеся на них у власному браузері – точно так, як згодом дивитимуться відвідувачі. Це безпечна пісочниця: можна змінювати що завгодно, ламати що завгодно, і ніхто цього не побачить. (Сам сайт зроблено на Astro – це окрема історія з окремим поясненням.)
3. Тримайте страхувальну сітку – Git. Перш ніж кудись щось надсилати, ви зберігаєте знімок своєї роботи за допомогою Git. Уявіть собі бездоганну кнопку «скасувати», яка пам’ятає кожну версію, тож ви завжди можете відступити назад, якщо щось піде не так. (Теж має окреме пояснення – Git дружніший, ніж про нього кажуть.)
4. Надішліть його в Cloudflare – це називають «деплой». Коли вас усе влаштовує, ви запускаєте одну-єдину команду, яка передає ваш готовий сайт до Cloudflare. Це і є деплой (від англійського deploy – «розгорнути»). Виглядає вона так:
npm run deployОце й усе. Ви натискаєте Enter, чекаєте кілька секунд, поки воно працює, – і Cloudflare розносить копії вашого сайту по всіх тих містах світу. (Якщо вам хочеться побачити, що ви під’єднані до Cloudflare, перш ніж узагалі щось надсилати, є лагідна нешкідлива команда, яка просто вітається і каже, під яким обліковим записом ви ввійшли: нічого не змінюється, нічого не надсилається:
npx wrangler whoamiВона просто друкує вам назву вашого облікового запису. Гарна перша спроба – щоб просто побачити, як команда робить щось справжнє і безпечне.)
5. Спрямуйте своє ім’я на свій сайт. Ви кажете Cloudflare: «коли хтось набирає мій домен – покажи йому цей сайт». Пара кліків. І це все – ваш сайт живий, швидкий і захищений, і до нього може дістатися будь-хто й звідусіль.
Ось що найдивовижніше: не було жодної миті, коли вам довелося б орендувати сервер, налаштовувати його, захищати чи підтримувати в робочому стані. Ви пройшли шлях від теки на ноутбуці до сайту, доступного всьому світові, і найважчим, що ви зробили, був вибір імені.
Отже, одним подихом
Cloudflare – це друг, який бере ваш готовий сайт і дбає, щоб той дістався до кожного, будь-де, швидко й безпечно: тримає копії поруч із вашими читачами і бере на себе всю невидиму складність сучасної веб-доставки, щоб ви могли думати лише про те, що насправді хочете сказати.