Практически съвети за оптимално използване на сървърните ресурси Любомир Русанов презентация

Какво е сървърен ресурс? Изразходвана памет; Процесорно натоварване; Интернет трафик; Дискови операции; Брой файлове; База от данни; Брой връзки към уеб сървъра;

Слайд 1
Практически съвети за оптимално използване на сървърните ресурси

Любомир Русанов


Слайд 2Какво е сървърен ресурс?

Изразходвана памет;
Процесорно натоварване;
Интернет трафик;
Дискови

операции;
Брой файлове;
База от данни;
Брой връзки към уеб сървъра;


Слайд 3Основно правило за оптимизация
Грешките на програмистите ...
се решават ...
с повече ХАРДУЕР!!!


Слайд 4До кога?


Слайд 5Основни грешки

Динамично оразмеряване на картинки;
Излишно голям брой елементи на

страницата;
Ненужни статистически модули;
Неоптимални алгоритми;
Проблемни бази данни и заявки;
Лош разчет на посещенията;
Самоопресняващи се и презареждащи се страници;


Слайд 6Намерете тясното място
Концентрирайте се върху най-често извикваният код;
Използвайте кеширане;
Не извиквайте външни

ресурси в реално време;
Използвайте оптимални SQL заявки;
Тествайте с големи обеми данни още при разработка;

Слайд 7Използване на XDebug
XDEBUG е extension за дебъгване, трейсване, профилиране на

php приложения;
XDEBUG-a се поддържа от всички съвременни среди за php разработка: NetBeans, Eclipse и др.;
Профайлера е подходящ за тестване на приложения, които имат проблем със скоростта, а и за откриване на тесни места (bottleneck);
Информацията от профайлера може да се анализира със различни приложения;

Слайд 8 Анализиране на profiling данните
Цялата profiling информация се записва в

лог файл;
kCacheGrind - за Linux - http://kcachegrind.sourceforge.net/html/Home.html
winCacheGrind - Aналог за Windows - http://sourceforge.net/projects/wincachegrind/
И двата продукта дават информация за:
Времето за изпълнение на всички извиквания към php функции (библиотечни или не) - както времето за изпълнение на самата функция (stand alone), така и общото акумулирано време , ако тази функция е викана, напр. в цикъл.
Дърво на извикванията (в linux версията представена графично)
Пълен списък на графовете Извикан->Извикващ.
Stack-trace-ове.

Слайд 11 Няколко полезни връзки
http://devzone.zend.com/article/2930
http://devzone.zend.com/article/2899-Profiling-PHP-Applications-With-xdebug
http://devzone.zend.com/article/2871-Tracing-PHP-Applications-with-xdebug
http://devzone.zend.com/article/2930-Debugging-PHP-applications-with-xdebug
http://affinitybridge.com/blog/code-optimization-xdebug-and-kcachegrind
http://techmania.wordpress.com/2008/07/02/debugging-php-in-eclipse-using-xdebug/


Слайд 12Съвети за бази от данни
Използвайте правилните типове данни;
Нормализирайте данните

– създавайте правилни схеми;
Създавайте индекси – само когато са необходими;
Пишете заявките така, че да могат да използват индекси;
Използвайте само тези колони, които ви трябват;
Използвайте inner join винаги, когато е възможно;

Слайд 13
Правилно!

Грешно!


Слайд 14SELECT
*
FROM
project_categories pc
INNER JOIN projects p
ON p.id = pc.project_id
Използване

на индекс за join!

Без използване на индекс за join!


Слайд 15Въпроси и отговори


Слайд 16

Благодаря Ви!
Любомир Русанов

http://www.superhosting.bg

http://blog.superhosting.bg
http://facebook.com/superhosting
http://twitter.com/SuperHostingBG



Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика