Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Как сделать
 быстрее?
      Осторожно!
 Иногда превращается
в экономию на спичках.
CSS и JS

• в идеале клеим в 1JS + 1CSS
• google clojure или yui compressor
• в head сначала стили, потом скрипты
GZIP

• Content-Encoding: gzip
• новым браузерам отдаем сжатое
• «старым осликам» отдаем несжатое
GZIP
gzip                 on;	 	 	
gzip_min_length      500;		 	 # подбирайте эти
gzip_buffers         64 8k;	 	 # парамет...
GZIP static

• собирайте nginx с поддержкой
  gzip_static

• статику жмите единоразово (при
  каждом деплое) и кладите ряд...
GZIP static


gzip_static	 	   on;
expires          max;
Images

• собирайте картинки в спрайты
  (особенно иконки)

• минимизируйте PNG
• задавайте размеры картинок
• expires max
Logs


• выключите логи для js, css и
  картинок
Cookies

• статика на assets.domain.com
  (cookieless domain)

• запретите google analytics ставить
  куки от .domain.com
Кеш на клиенте


• max-age, etag и last-modified
• 304 с пустым телом
CDN


• Google Ajax Libraries
• Amazon Cloudfront S3
Background


• все, что требует времени,
  запускайте в фоне, не заставляйте
  пользователя ждать
Ruby on Rails


• gem jammit
• capistrano
Ссылки

•   http://clojure.org

•   http://developer.yahoo.com/yui/compressor/

•   http://nginx.ru

•   Firebug + Google ...
Спасибо!
http://spravochnik.dn.ua/
Upcoming SlideShare
Loading in …5
×

Как сделать сайт быстрее?

1,799 views

Published on

Слайды к докладу на CnC Донецк

Published in: Technology
  • Be the first to comment

Как сделать сайт быстрее?

  1. 1. Как сделать быстрее? Осторожно! Иногда превращается в экономию на спичках.
  2. 2. CSS и JS • в идеале клеим в 1JS + 1CSS • google clojure или yui compressor • в head сначала стили, потом скрипты
  3. 3. GZIP • Content-Encoding: gzip • новым браузерам отдаем сжатое • «старым осликам» отдаем несжатое
  4. 4. GZIP gzip on; gzip_min_length 500; # подбирайте эти gzip_buffers 64 8k; # параметры сами, gzip_comp_level 7; # зависят от железа gzip_http_version 1.1; gzip_proxied any; gzip_types text/plain application/xml application/x-javascript text/css; # text/html не надо → nginx и так это делает
  5. 5. GZIP static • собирайте nginx с поддержкой gzip_static • статику жмите единоразово (при каждом деплое) и кладите рядом с исходниками
  6. 6. GZIP static gzip_static on; expires max;
  7. 7. Images • собирайте картинки в спрайты (особенно иконки) • минимизируйте PNG • задавайте размеры картинок • expires max
  8. 8. Logs • выключите логи для js, css и картинок
  9. 9. Cookies • статика на assets.domain.com (cookieless domain) • запретите google analytics ставить куки от .domain.com
  10. 10. Кеш на клиенте • max-age, etag и last-modified • 304 с пустым телом
  11. 11. CDN • Google Ajax Libraries • Amazon Cloudfront S3
  12. 12. Background • все, что требует времени, запускайте в фоне, не заставляйте пользователя ждать
  13. 13. Ruby on Rails • gem jammit • capistrano
  14. 14. Ссылки • http://clojure.org • http://developer.yahoo.com/yui/compressor/ • http://nginx.ru • Firebug + Google PageSpeed + YSlow • RailsLab: Scaling Rails Podcast (№ 1, 10, 11)
  15. 15. Спасибо! http://spravochnik.dn.ua/

×