Обчислювальна потужність є ключовою для продуктивності програмного забезпечення. Ймовірно, ви швидко помітите значне зростання продуктивності під час оновлення комп’ютера, якому кілька років. Закон Мура описує, що кількість транзисторів у ЦП подвоюється приблизно кожні два роки з моменту винаходу ЦП. Це призвело до постійного збільшення обчислювальної потужності, стимулюючи регулярний цикл оновлення.
Незважаючи на високу продуктивність нинішнього комп’ютера високого класу, багато завдань просто забагато для виконання одним комп’ютером за розумний проміжок часу. На щастя, більшість із цих завдань не впливають на звичайного домашнього користувача чи навіть на більшість стандартних офісних завдань. Однак ви почнете знаходити такі види навантажень у спеціалізованих професійних навантаженнях.
Одним із варіантів вирішення цього є призначення відповідних людей на більш потужні комп’ютери високого класу. Однак ця стратегія дорога і в багатьох випадках не матиме значення, оскільки вимоги до обробки просто надто високі.
Іншим варіантом є ферми серверів, замість того, щоб намагатися втиснути все більше і більше продуктивності в персональний пристрій, маючи один пристрій на відповідного працівника, і все одно не маючи необхідної продуктивності. Серверна ферма, по суті, передає процесорну потужність аутсорсингу. У цьому випадку це означає наявність багатьох серверів, об’єднаних разом, які виконують важкі завдання обробки, призначені працівником фермі серверів. Потім завдання обробки передаються на сервери.
Ключові характеристики та переваги серверних ферм
Визначальним фактором ферми серверів є те, що ви більше не обмежені одним пристроєм, який виконує обробку. Натомість потужність обробки забезпечується десятками, сотнями або навіть тисячами серверів, згрупованих у кластер.
Самі сервери зазвичай розташовані в серверній кімнаті або центрі обробки даних. Тут вони можуть бути налаштовані на високошвидкісні з’єднання між собою та високошвидкісну мережу для отримання робочого навантаження для обробки та своєчасної передачі завершеного робочого навантаження назад.
Ретельно керуючи фактичною продуктивністю всіх серверів, можна налаштувати загальну продуктивність, яку можна досягти за розумну ціну. Сервери, як правило, працюють у режимі 24/7, хоча залежно від навантаження це може бути недосяжним. Постійний біг із максимальною продуктивністю споживає багато енергії. Це також означає, що потрібно значне охолодження, що потребує ще більшої потужності. Багато серверних ферм можуть працювати нижче своєї максимальної продуктивності, щоб досягти високого співвідношення продуктивності на ват.
Підтипи та варіації
Під час роботи з розробки коду багато мов потребують компіляції додатків перед їх запуском. Цей процес компіляції дуже інтенсивно використовує процесор і у великих програмах може тривати годинами. Ферма серверів може допомогти скоротити час компіляції, пропонуючи більшу продуктивність, ніж це можливо на одному комп’ютері. Серверні ферми також можуть працювати 24/7, дозволяючи розробникам поставити процес компіляції в чергу на ніч, маючи можливість вимкнути власні машини. Ферми серверів, які використовуються виключно для компіляції програмного забезпечення, можуть називатися фермами компіляції.
У ролях комп’ютерної графіки час візуалізації часто може бути тривалим. Це не є великою проблемою для нерухомих зображень, хоча це може зайняти час. Візуалізація відео може зайняти багато часу, особливо для кінофільмів. Сцени не тільки неймовірно складні, але й мають високу роздільну здатність, і їх багато, оскільки потрібно багато кадрів на секунду. Ферми серверів, призначені для завдань візуалізації, можуть називатися фермами рендерингу.
Різниця між фермою серверів і суперкомп’ютером дуже мала. Обидва є великими колекціями серверів, призначених для спільної роботи для виконання завдання. Між ними немає чіткої різниці. Історично суперкомп’ютери використовували апаратне забезпечення спеціального призначення. Однак сучасна тенденція в суперкомп’ютерах полягає у використанні більшої кількості стандартних серверних компонентів.
Хмарне майбутнє
Серверні ферми дорогі. Вони потребують електроенергії, потребують багато охолодження та інфраструктури центру обробки даних. Серверні ферми також є дорогими для встановлення, з високими початковими витратами на обладнання. Що ще гірше, вони стикаються з регулярним старінням. У індустрії центрів обробки даних високого класу прийнято вважати, що 7-річний центр обробки даних є застарілим. За цей короткий проміжок часу робоче навантаження може зрости в міру зростання вимог до продуктивності.
Єдине реальне рішення цієї проблеми пропонують гіперскейлери. Hyperscalers — це такі гігантські технологічні компанії, як Google, Amazon і Microsoft, які достатньо великі, щоб побудувати та запустити багато масивних центрів обробки даних. Ці компанії здають в оренду обчислювальну продуктивність своїх центрів обробки даних як хмарну платформу. Цей доступ часто віртуалізований.
Ідея полягає в тому, що замість того, щоб платити за покупку та використання апаратного забезпечення, ви просто орендуєте доступ до того, що вам потрібно, коли вам це потрібно. Це має сприятливий для річного бюджету фактор відсутності будь-яких високих регулярних авансових витрат. Натомість ви просто платите за те, що використовуєте. Корисно те, що ви навіть не обмежені одним налаштуванням апаратного забезпечення. Припустимо, у вас невелике, відносно не термінове навантаження. У такому випадку ви можете просто налаштувати його для запуску на меншому та – що критично – дешевшому віртуальному сервері. Це також йде в інший бік. Якщо у вас великий або терміновий проект, ви можете заплатити більше за ще більший віртуальний екземпляр, щоб мати більше процесорної потужності, щоб швидше завершити.
Реально кажучи, хмарні сервіси пропонують кілька вагомих переваг перед фермами серверів. Єдиною потенційною проблемою є вартість, яка як комерційна послуга може бути вищою за одиницю обробки, ніж вартість локальної серверної ферми. Варто зазначити, що гіпермасштабувальники виграють від економії на масштабі, яка впливає на їхню ціну.
Висновок
Ферма серверів — це сукупність серверів, зазвичай розташованих у серверній кімнаті або центрі обробки даних, на які виділяються завдання, що потребують великої обчислювальної потужності. Це забезпечує кілька переваг, зокрема високу продуктивність і роботу 24/7. Хмарні сервіси від Hyperscalers є основним конкурентним варіантом. Вони пропонують кілька переконливих переваг, включаючи відсутність початкових витрат на апаратне забезпечення та гнучкість ціни та продуктивності для кожного завдання.