Далеко не кожен користувач сучасноїКомп'ютерна система у повсякденній роботі стикається з поняттям «навантажувальне тестування». В основному воно знайоме веб-розробникам та всім тим, хто використовує ресурсомісткі програми. Тим не менше іноді знання в цьому питанні можуть стати у нагоді і рядовим користувачам. Спробуємо розібратися, навіщо це потрібно.
Навантажувальне тестування: види та цілі
Насамперед, варто чітко розмежувати види такихтестів. Умовно їх можна поділити на два класи: перевірка комп'ютерного «заліза» за максимально можливого чи надмірного навантаження на кожен компонент та тестування програмного забезпечення (веб-сайтів з елементами прогнозування, окремо взятих програм тощо).
Само собою зрозуміло, що тестування сайтівПрямо пов'язано і з перевіркою працездатності серверів, на яких розміщується інформація, а також з віртуальними веб-серверами, які створюються в процесі роботи зі спеціалізованими програмами на кшталт Denwer.
Програми для навантажувального тестування та їх завдання
Як бачимо, взаємозв'язок тут дуже сильний.І якщо говорити про "залізо", система навантажувального тестування з використанням спеціальних утиліт дозволяє досить точно виявити потенційні неполадки при роботі, так би мовити, в екстремальних ситуаціях. Приклад найпростіший. Сучасні комп'ютерні ігри з їхніми вимогами можуть запросто навантажити систему до такого стану, що взагалі перестане працювати. Тому, перш ніж встановлювати таке програмне забезпечення на комп'ютер, можна провести серію тестів, щоб визначити, чи зможе начинка «тягнути» гру. За результатами приймається рішення про встановлення програми. У принципі, те саме стосується і додатків, що передбачають проведення складних математичних розрахунків, і проектних робіт, оскільки навантаження на той же процесор або оперативну пам'ять у порівнянні зі звичайним станом системи може бути перевищена в рази.
Що ж до другого класу, тестуваннясайту та сервера може виступати як певний універсальний засіб прогнозування їхньої поведінки в умовах реального функціонування. Наприклад, це може бути емуляція одночасного запиту доступу великої кількості користувачів. Як відомо, за таким принципом діють DDoS-атаки, коли сервер чи сайт не встигає обробляти надто велику кількість звернень. Навантаження тестування сервера або сайту буде розглянуто докладніше трохи пізніше. А поки що займемося комп'ютерним «залізом». Це стосується не лише домашніх чи робочих терміналів, а й реальних фізичних серверних систем.
Тест процесора
Почнемо, мабуть, із серця будь-якого комп'ютера –центральний процесор. Не секрет, що саме неполадки в його роботі здебільшого призводять до найсумніших наслідків. Дуже часто це пов'язано із перегрівом. Навантаження тестування дозволяє створити йому екстремальні умови. А потім можна подивитися, як це вплине на його роботу.
Само собою зрозуміло, що проведеннянавантажувального тестування такого типу передбачає використання певних утиліт. Сьогодні їх можна нарахувати сотні та тисячі. Але, на думку більшості експертів, лідером у цій галузі є додаток Prime95, який можна застосовувати і до процесорів, і планок оперативної пам'яті. Але основний напрямок – саме перевірка процесорного чіпсету.
При використанні утиліти для початкурекомендується закрити всі активні програми та вимкнути автоматичний режим глибокого сну, щоб комп'ютер ненароком не відключився в процесі перевірки. Тепер потрібно змоделювати процесору найжорсткіші умови (а програма може це зробити, як ніяка інша, справді ставлячи чіпи у найважчі умови). Сам тест активується з меню опцій, де вибирається розділ Torture Test. Там будуть вказані види операцій, що проводяться. Найбільш цікавими тут є тести Blend (одночасне навантаження і на процесор, і на «оперативку»), а також Small FFT і Large FFT (збільшення навантаження на процесор за рахунок вивантаження оперативної пам'яті).
Як визначити, що тестування навантаженняпройшло успішно? Єдиної думки тут немає, але вважається, що якщо протягом хоча б 4 години помилок або збоїв у роботі чіпа не спостерігалося, цей компонент досить стійкий до надмірних навантажень. Але буває і таке, що збої можуть з'явитися набагато пізніше, тому, якщо у вас є неабиякий запас часу, краще збільшити період тестування до 24 годин (помилки можуть з'явитися через півдня роботи).
Перевірка роботи оперативної пам'яті
Не менш важливим є і навантажувальнетестування "оперативки", яка виконує функції так званої другої скрипки. Для цього найкраще підійде додаток Memtest86+, який на сьогоднішній день є найкращим.
Для коректної роботи за його допомогою потрібно створитизавантажувальний диск чи флешку та завантажити комп'ютерний термінал саме з такого носія. Після активації тесту на його повне виконання буде потрібно багато часу. Можна просто залишити комп'ютер на ніч. Цього має вистачити.
Визначення поведінки графічного адаптера
З графікою також варто провести тест, оскільки відеоадаптери при надмірному навантаженні часто є причиною комп'ютерних збоїв. Ідеальним інструментом тут стане програма FurMark.
Ця утиліта здатна нагрівати графічний чіпнабагато сильніше, ніж це зробить якась тривимірна гра з системними вимогами вище за середній рівень. Як показує практика, умови створюються такі, що відеокарта може починати збоїти вже у період від 15 до 30 хвилин після початку тестування.
Крім того, можна використовувати і спеціальніутиліти розроблені під конкретні ігри. Наприклад, дуже добре підійдуть тестові програми типу Alien vs Predator, S.T.A.L.K.E.R. або ще щось у цьому роді. Як правило, поширюються вони абсолютно безкоштовно, а з їх допомогою можна точно встановити, як поводитиметься система після встановлення оригінального ігрового пакету.
Для чого потрібне тестування серверів та сайтів
Тепер кілька слів про те, що є тестування сайту та веб-сервера. Про один аспект (DDoS-атаки) вже було сказано. Нині подивимося на це питання з іншого боку.
Самі тести такого типу певною мірою можнавіднести навіть до маркетингових інструментів щодо прогнозування поведінки користувачів. Так, наприклад, можна змоделювати ситуацію поведінки певної кількості (максимальної/пікової) людей при вході на сайт, дізнатися, скільки сторінок може переглядатися, чи буде задіяна електронна пошта, наприклад, у процесі замовлення товару, як інформація може використовуватися для ідентифікації відвідувачів, дозволить чи пропускна здатність каналу надати одночасний доступ до сайту користувачам у певний момент часу, чи буде затребуване підтвердження повноважень користувача третьою особою (наприклад, при введенні номера банківської картки), наскільки ефективним виявиться впровадження Java-аплетів або використання захищеного з'єднання https і т.д.
Питання тесту веб-серверів (програмного забезпечення) та створюваних Інтернет-ресурсів
У принципі, майже такі ж завдання ставить передсобою та навантажувальне тестування сервера. Однак тут акцент робиться суто не технічний аспект. Тести дозволяють виявити, чи можуть кілька користувачів мати один і той же IP, уточнити час відгуку на запити, що надсилаються, дізнатися, як буде реагувати вся система на захищене або незахищене з'єднання, якою буде швидкість доступу при одночасному надсиланні занадто великої кількості запитів і т. д. .
В даному випадку (і для сайту, і для веб-сервера)багато хто радить використовувати найпотужніший пакет під назвою OpenSTA (System Architecture Test), який дозволяє не тільки провести перевірку, але й розбити завдання на складові для кожного окремо взятого елемента структури з використанням інструменту створення та моделювання скриптів Script Modeler. Примітно, що після створення такої моделі можна перевірити навіть з'єднання протоколу SSL (обов'язково має бути запущено так званий сервер імен). Крім того, результати можна зберігати у розділі Repository Host, а тести об'єднувати у відповідні групи.
Що в підсумку?
В принципі, це дуже коротка інформація щодопитанням навантажувального тестування, адже самих тестів, як і програм, що дозволяють їх проводити, можна знайти дуже багато. Скажімо так: тут представлені найпопулярніші утиліти та розглянута сама суть питання. Здається, після ознайомлення будь-який користувач хоч трохи просунеться у розумінні питань, пов'язаних із навантажувальним тестуванням.