Процесорно време?! Статистика и оптимизация!

CPU_Statistics_OptimizationРубриката с препоръки на техническия екип на нашата хостинг компания СуперХостинг.БГ продължава с многообещаваната тема за процесорното време (CPU usage).

Това са едни от най-интересните въпроси, за които ни питате по темата за процесорните ресурси. Ето, че дойде времето и мястото да разкрием „тайните“! 🙂 Ще дадем насоки за оптимално използване на процесорните ресурси на база 6 годишен опит, вашите над 30 хиляди работещи сайта и хостинг акаунти. Повишеното потребление на CPU се среща при около 0,01% от сайтовете, но е много важно да се обърне внимание на начините за оптималното му използване, тъй като това е краен ресурс, който се споделя от всички клиенти на даден сървър за споделен хостинг.

Какво е процесорно време?

Това представлява времето, необходимо на едно ядро от сървърен процесор да изпълни операциите по обработка на скрипт и да върне резултат. Също така, 1 часовникова минута може да се равнява на няколко процесорни минути, тъй като процесорите обикновено са с повече от 1 ядра (8-ядрени, 16-ядрени…). 🙂

Как се отчита и какво се включва в статистиката?

В процесорното време, което се отчита при услугата споделен хостинг се включва само обработката на скриптове (php, perl, python и други скриптове), които се изпълняват на сървъра. В статистиката не се включва времето за „сервиране“ на статично съдържание (css, js, изображения и др.), както и времето необходимо за обработка за SQL заявките в сайтовете. Статистика за изразходваното процесорно време може да намерите във вашия клиентски профил.

В нашата система процесорните ресурси се отчита на база акаунт, а не на отделните сайтове, разположени в хостинг акаунта. (Това е много важно за коректния анализ на вашите приложения!)

В повечето случаи повишеното потребление на процесорно време не се дължи на един скрипт, който се изпълнява дълго време и/или изразходва много ресурс. Много често скриптовете в акаунта се изпълняват за милисекунди, но стотици или хиляди пъти, което води до натрупване на времето за работа на процесора.

Анализът!

Анализът за изразходваното процесорно време изисква да отделите поне малко и от вашето лично време (от вашия CPU usage). 🙂 Много полезна информация, която помагa за анализ и оптимизация, може да намерите в секция Логове (Logs) на контролния панел Cpanel – Raw Access Logs и Awstats. В статистиката анализирайте информацията в секциите:

  • Days of month (Number of visits, Pages, Hits)
  • Pages-URL (Top 25)
  • Hosts (Top 25)
  • HTTP Status codes

Така ще можете да проследите посещенията за различните дни, IP адресите, от които е достъпван сайта, както и страниците, които са зареждани.

Често срещани причини за повишено потребление на CPU

– динамична обработка на снимки (динамично визуализиране, създаване на thumbnails, поставяне на „water mark“ върху снимка и т.н.)

Ето и малко повече информация относно динамичното и статичното „сервиране“ на изображения:

В статистиката за процесорно време, както споменахме по-горе, се отчита времето за обработка на скриптове от хостинг акаунта (в случая php скриптове) и не се отчита времето, необходимо за „сервиране“ на статично съдържание. Пример за динамична обработка на изображения, е картинка да се визуализира по подобен начин:

https://domain.com/image.php?path=изображение.jpg

За да се покаже снимката, скриптът се извиква всеки път. На сайтовете, обаче, обикновено няма само една картинка. Например, ако на една страница има 5 картинки, извикването на скрипта е 5 пъти и това е само за един потребител при едно зареждане на страницата. Но сайта няма и само един потребител, както и страницата не се отваря само веднъж. Това води да многократно изпълнение на един и същ скрипт, което следва и до неоптимално увеличаване на изразходваните ресурси.

„Сервирането“ на статичното съдържание представлява картинката да се извиква директно, без да се използва скрипт:

http://domain.com/изображение.jpg

Често в повечето CMS-и се използват скриптове за динамично преоразмеряване и „сервиране“ на изображения, като phpthumb, timthumb и др. При развитие на сайта подобни скриптове започват да изразходват неоптимално ресурси и едно удачно решение е „сервирането“ им като статично съдържание.

– разположен PHP чат, live chat, ShoutBOX ;
– статистически модули;

Подобни приложения генерират много хитове към уеб сървъра, често на всяка секунда, за да може информацията да се предава в реално време. Това също често води до многократно увеличение на изразходваните ресурси.

– излишни извиквания / презареждания (hits) на голямо количество елементи (картинки) на уеб страница, липсващи елементи
– разположена система за управление на реклами (PhpAdsNew, OpenAds) и др.;

Автоматични презареждания на определени елементи или страници води до излишни хитове към уеб сървъра. Липсващите елементи в сайта също могат да повишат ресурсите, ако например, грешката 404 се обработва от PHP. Удачен вариант за обработка на 404 грешка е използването на SSI.

Системите за управление на реклами също използват php скриптове за визуализация на съдържанието и при повишаване на хитовете, често се увеличава и изразходваното процесорно време.

– многобройни посещения и индексации от търсещи роботи.

Базирайки се на практиката си, виждаме, че ботовете понякога са много агресивни при индексирането на сайтовете. В случай, че забележите завишено индексиране от ботове, то можете да ги блокирате временно чрез .htaccess файла или да намалите честота на обхождане за сайта. Това можете да направите чрез Crawl-Delay функцията в robots.txt файл.

Изводът или нашият „Съвет“!

Нашата препоръка е винаги да работите в посока на оптимизация на приложенията. Освен намаляването на използваните сървърни ресурси, така ще ускорите и работата на вашите сайтове. Избягвайки горепосочените „Често срещани причини за повишено потребление на CPU“ още в развитието на вашия сайт, ще избегнете много технически проблеми, проявяващи се както при пикови натоварвания, така и при сайтове с повече посещения. Все пак, не винаги само оптимизацията помага. Идва момент, в който за обема от посещения и данни на даден сайт, е необходимо да се избере следващо в йерархията хостинг решение. Това, с което отново можем да ви помогнем, е, че предлагаме всички хостинг решения и качество, които да задоволят нуждите на сайта по целия път на растежа му! 🙂

Специално благодарим на нашата колежка Роси – отдел Техническа поддръжка, за синтезираната и точна информация, включена в тази публикация! 🙂

Ще се радваме да ни питате и отговорим на всичките ви въпроси за процесорното време!

И за да не пропуснете още полезни съвети на нашите колеги, както и всичко друго интересно и ново от сферата на хостинг услугите, абонирайте се за нашия блог. Не пропускайте и нашата фен страница във Facebook, както и да ни следвате в Twitter.

СуперХостинг.БГ
СуперХостинг.БГ
СуперХостинг.БГ е СуперЕкипът! Ежедневно всеки дава най-доброто от себе си, за да можете вие, клиентите на СуперХостинг.БГ, да сте номер едно. СуперСилата на СуперЕкипа е, че винаги е готов да ви даде точната информация, тази от която се нуждаете и за която питате.
0 0 votes
.
Абониране
Уведоми ме при
guest

20 Коментара
Inline Feedbacks
View all comments
Готов онлайн магазин? Какво следва после?

Готови сте с изграждането на онлайн магазина си? А какво следва после? [Аудио]

0
Изграждането на онлайн магазин е началната точка в развитието на един бизнес. За да бъде разпознаваем обаче, е необходимо да извървите още няколко стъпки.
Съвместна статия за маркетинг, реклама и SEO - Netpeak

13 съвета за маркетинг и реклама [Аудио]

2
Сега когато имате повече време у дома, можете да отделите енергия в SEO и добра реклама за дигитален успех. Заслужава си!
4 стъпки към продаващия онлайн магазин

Защо онлайн магазинът ми не продава? 4 стъпки към успешен онлайн бизнес [Аудио]

0
Онлайн търговията е многокомпонентен и продължителен процес. Той не свършва с направата на сайт или пускането на една реклама, напротив - с тях едва започва.