Wordcamp2011
-
Upload
superhostingbg -
Category
Technology
-
view
1.208 -
download
2
Transcript of Wordcamp2011
![Page 1: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/1.jpg)
Производителност за Wordpress
Любомир РусановСуперХостинг.БГ
Http://www.superhosting.bg
![Page 2: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/2.jpg)
Какво е сървърен ресурс? Изразходвана памет; Процесорно натоварване; Интернет трафик; Дискови операции; Брой файлове; База от данни;
![Page 3: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/3.jpg)
Основно правило за оптимизация
Грешките на програмистите ...
се решават ...с повече ХАРДУЕР!!!
![Page 4: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/4.jpg)
До кога?
![Page 5: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/5.jpg)
Основни грешки Оразмеряване (обработка) на картинки; Излишно голям брой елементи на
страницата; Ненужни статистически модули; Неоптимални алгоритми; Проблемни бази данни и заявки; Лош разчет на посещенията; Самоопресняващи се и презареждащи се
страници;
![Page 6: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/6.jpg)
Намерете тясното място
Концентрирайте се върху най-често извикваният код;
Използвайте кеширане; Не извиквайте външни ресурси в реално
време; Използвайте оптимални SQL заявки; Тествайте с големи обеми данни още при
разработка;
![Page 7: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/7.jpg)
Обратно към Wordpress Използване на кеширащи плъгини Не използвайте динамично оразмеряване,
например timthumb; Проверявайте plugin-ите, които използвате
за скорост; Премахнете излишните plugin-ини, които
реално не използвате; Внимавайте с броят ресурси (css, js,
картинки), които зареждате; 404 грешки;
![Page 8: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/8.jpg)
Защо не timthumb
Извиква php код за ВСЯКА картинка; Извършва относително тежки операции за
всяка картинка; Картинките не се кешират от браузъра;
![Page 9: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/9.jpg)
Използвайте mod_expires
Указва на уеб браузърите колко време на кешират ресурси;
Подходящ е за сайтове с много css, js и картинки;
Активира се чрез .htaccess; Пример
![Page 10: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/10.jpg)
Използвайте mod_expires### activate mod_expires
ExpiresActive On
### Expire .gif's 1 month from when they're accessed
ExpiresByType image/gif A2592000
### Expire .jpg's 1 month from when they're accessed
ExpiresByType image/jpg A2592000
### Expire .js's 1 month from when they're accessed
ExpiresByType text/js "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
### Expire .css's 1 month from when they're accessed
ExpiresByType text/css "access plus 30 days"
### Expire everything else 1 day from when it's last modified
### (this uses the Alternative syntax)
ExpiresDefault "modification plus 1 day"
![Page 11: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/11.jpg)
Използвайте W3 Total Cache Един от мощните кеширащи plugin-и; Кеширане на цели страници – генерирани от
php; Кеширане на заявки към базата данни; Кеширане на обекти; Поддържа minify на js и css + кеширане; Подобрява кеширането от браузърите; Подобрява обработката на 404 грешките Труден за конфигуриране;
![Page 12: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/12.jpg)
Използвайте W3 Total Cache
![Page 13: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/13.jpg)
Използвайте WP Super Cache Много популярен и бърз; Кеширане на цели страници генерирани от
php; Може да сервира кешираните страници и с
Php – няма нужда да се модифицира .htaccess
Подобрява кеширането от браузърите; Позволява компресиране на страниците; Лесен за конфигуриране;
![Page 14: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/14.jpg)
Използвайте WP Super Cache
![Page 15: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/15.jpg)
DB Cache Reloaded Fix
Кешира заявките към базата от данни; По-малък размер на кеша, защото не пази
цели страници; Много подходящ при големи бази от данни; Комбинира се добре с WP Super Cache Лесен за конфигуриране;
![Page 16: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/16.jpg)
DB Cache Reloaded Fix<!-- Generated in 0,837 seconds. Made 86 queries to database and 21 cached queries. Memory used - 40.27MB --><!-- Cached by DB Cache Reloaded -->
![Page 17: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/17.jpg)
Hyper Cache Extended
Кеширане на цели страници генерирани от php;
Работи както под Apache така и под IIS Обработка на 404 грешки; Съвместим е с мобилни версии; Разработен в България :) Лесен за конфигуриране;
![Page 18: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/18.jpg)
Hyper Cache Extended
![Page 19: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/19.jpg)
SQL_CALC_FOUND_ROWS Bug
Проявява се при много публикации:
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.ID NOT IN (44682, 44657, 44630) AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish') GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 24580, 5
![Page 20: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/20.jpg)
SQL_CALC_FOUND_ROWS Bug
Проблема е по-скоро в MySQL; Може да се реши с кеширащ Plugin; Има наличен „пач“ за WordPress 3.2.1;
http://x-pose.org/2011/08/fix-the-wordpress-sql_calc_found_rows-bug/
![Page 21: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/21.jpg)
Резюме Няма универсално решение; Тествайте не на реалният си сайт; Комбинирайте различни техники; Консултирайте се със специалисти;
![Page 22: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/22.jpg)
Въпроси и отговори
![Page 23: Wordcamp2011](https://reader036.fdocuments.in/reader036/viewer/2022070319/5584b1fdd8b42a8f768b46ec/html5/thumbnails/23.jpg)
Благодаря Ви!Любомир Русанов
http://www.superhosting.bg http://blog.superhosting.bg http://facebook.com/superhosting http://twitter.com/SuperHostingBG