Тест за производителност на VPS сървър
След като закупих и настроих сървъра, се заинтересувах какъв вид натоварване може да издържи. Колко потребители може да обработи. И колко ще се различават тези показатели от показанията на обикновен споделен хостер?
По принцип имах SSH достъп до два сървъра, един в Америка (споделен хостинг) и един в Англия (VPS). и двата сървъра имаха инсталиран apache, така че беше решено да се използва помощната програмаab за създаване на стрес натоварване.
Използвани са следните параметри:
Тествайте в 500 заявки, с организиране на 20 едновременни връзки.
В същото време на VPS имах възможност да проведа експеримента по-широко, бяха използвани няколко настройки за кеширане, които ще опиша, преди да изпратя резултатите от теста. Ще започваме ли?
Първоначално тествах VPS сървър, на който беше инсталиран WordPress. По това време системата за кеширане на XCache вече беше инсталирана и работеща, WP-Super-Cache беше деактивиран.
Доста не е лошо, 7,56 заявки в секунда. Единственото нещо, което веднага започна да засяга проблема с липсата на памет. Цялата RAM беше изразходвана до краен предел, без да остава място за буфери и кеш. И размяната беше запълнена напълно. Тоест отне повече от гигабайт RAM.
Използването на процесора също беше доста стресиращо. И 4-те процесорни ядра бяха натоварени от 40 до 80%.
След това активирах разширението WP-Super-Cache, регистрирах пренасочвания в nginx за това разширение. Рестартира php5-fpm и самия nginx, за да освободи памет. И повтори теста със същите параметри.
Като цяло тестът премина отново, но скоростта на връщане вече достига 14,15 заявки в секунда. В същото време натоварването на паметта и процесора беше подобно на предишния тест.
Да подаде/etc/nginx/nginx.conf добави следния ред към секцията http:
И след това в настройките на тествания домейн се добавя:
За всеки случай отидох от браузъра на главната страница на тествания блог, за да позволя да бъде кеширан. И след това повтори теста със същите параметри, както преди.
Зашеметяващите 4986,83 заявки в секунда! Но най-много ме впечатли, че консумацията на памет и натоварването на процесора останаха същите. Тоест, далеч не е границата. Скоростта на връщане на страници от блог на WordPress стана сравнима със скоростта на връщане на обикновен статичен сайт!
За да работи правилно администраторският панел на блога, трябва да напишете отделни правила за nginx, които деактивират тази система за кеширане на определени страници.
Тоест всъщност високата производителност и ниското натоварване започват да се показват в лоша светлина, когато използвате самия блог. Трябва да се откажете от много неща или да бъдете много изтънчени при настройването на това кеширане.
И накрая, реших да тествам ефективността на доставчика на хостинг услуги justhost.com, който хостваше сайта ми наскоро. За всеки случай не деактивирах WP-Super-Cache, използвах същите параметри на командата.
Доста сравними резултати! Цифра от 18,4 заявки в секунда, с активирано използване на кеша за apache, е доста добър резултат. Вярно, и сървърът се използва с 12 гигабайта RAM. Ясно е, че всичко това е разделено на всички видове клиенти. Но за apache не е достатъчно!
И освен това, в този случай apache само малко надмина nginx + php-fpm, инсталиран на по-малко мощен сървър по отношение на производителността.
Остава да разберем как ще се държи VPS с тези настройки при дълги натоварвания и какограничаване на паметта, разпределена за php5-fpm процеси. Но това са теми за други статии.