оптимизация

Оптимизация картинок в Web

2 Июль 2010

jpeg icon

Когда речь идет об оптимизации Web приложений, большое внимание следует уделять оптимизации клиентской части. Размер статических данных обычно в разы превосходит размер динамически генерируемых. Большинство этих данных - это медиа данные. Чаще всего это изображения (картинки для верстки и фотографии), кроме того есть flash, видео, аудио и т.п.

В этой статье рассмотрим основные инструменты оптимизации картинок для Web приложений.
Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Nginx + Memcached + SSI - кеширование страниц и блоков (partials)

6 Апрель 2010

nginx-logo

В одной из предыдущих статей мы рассмотрели, каким образом можно реализовать кеширование страниц с помощью Varnish и ESI. В этой статье рассмотрим альтернативное решение - на основе двух суперзнаменитых продуктов - nginx и memcached.
Оба не нуждаются в представлении, а о том, как на основе их можно значительно увеличить эффективность работы Вашего сайта, поговорим ниже.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Кеширование страниц - ускоряем сайт в 100 раз (Varnish + ESI)

22 Январь 2010

varnish-logo-red-64

В этой статье поговорим о кешировании страниц и их частей, а также о том, какие плюсы это дает.

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

В этой статье речь пойдет о том, как кешировать страницы с персональными данными используя Varnish и язык ESI.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Асинхронность с помощью fastcgi_finish_request()

6 Декабрь 2009

php-fastcgi

При оптимизации приложения важно не забывать о том, что оптимизируем мы прежде всего для клиента. Сайт, который работает медленно, это всегда неудобно и плохо.

Главный критерий оптимизации для клиента - это скорость ответа (т.е. время, за которое Web сервер отвечает на запрос). Если не брать во внимание клиентскую оптимизацию, есть ряд практик, позволяющих быстрее генерировать ответ клиенту (по сути без оптимизации внутренностей).
Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Кеширование тяжелых запросов (на примере memcache)

2 Декабрь 2009

memcached_banner75

В этой статье рассмотрим проблемы, которые могут возникать при кеширования тяжелых запросов. Под тяжелыми запросами следует понимать не только медленные, но и ресурсоемкие запросы (например, обращение к внешним XML источникам с последующей обработкой). Наиболее стандартные ситуации - это тяжелые SQL выборки на страницах с агрегационной информацией (популярные видео ролики, лучше фотки, самые активные пользователи и т.п.). На первый взгляд все просто - кешируем на час..два и забываем о этих запросах на долгое время. Какие проблемы могут возникнуть в ходе увеличения нагрузок?

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Тюнинг FreeBSD 7 под высокие нагрузки

14 Июнь 2009

freebsd

В этой статье представлена презентация Игоря Сысоева на тему тюнинга ОС FreeBSD 7 под высоконагруженный Web сервер. Он подробно рассказывает о тонкой настройке Web сервера под управлением freebsd. Каждый системный параметр детально описывается и докладчик предлагает рекомендуемые его значения. Must see.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Как выбрать колонки для индексирования в MySQL

9 Июнь 2009

mysql_logo

Как мы выбираем, по каким колонкам в MySQL строить индексы? Иногда не все так очевидно, как кажется. Эффективность того или иного индекса зачастую зависит от распределения данных в таблице. Правильный, на первый взгляд, индекс может работать крайне не эффективно в зависимости от специфики и частоты данных.

Как это можно выяснить? Простой и очень интересный пример взят с блога mysqlPerformanceBlog. Этот способ анализа индексов применим не только к MySQL, а и к другим СУБД.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Оптимизация клиентской части

7 Июнь 2009

Клиентская оптимизация

Что такое скорость загрузки Web страницы? Это время, за которое пользователь получает полностью загруженную страницу.

От чего зависит это время? От того, насколько долго запрос пользователя обрабатывается на сервере. Но не только.

Сегодня типичная Web страница - это несколько десятков картинок, парочка CSS файлов, до десятка JavaScript файлов и HTML размером в 50…100 Кб. И для загрузки каждого из этих компонент браузер посылает на сервер отдельный запрос.

Ясно, что загрузка одной только странички, сгенерированной на серверной части (на Вашем PHP, Python, ASP и т.п.) займет малую часть времени. Большинство времени и ресурсов отнимет загрузка всех остальных компонент страницы.

Клиентская оптимизация призвана уменьшить время полной загрузки страницы.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

PHP - рецепты и настройка под большие нагрузки

3 Июнь 2009

php

PHP, на сегодняшний день, это одна из самых популярных платформ для создания Web приложений. Нет смысла в очередной раз упоминать о многочисленных монстрах современного интернет, основой которых служит PHP.

PHP - достаточно производительная платформа (если сравнивать с альтернативными решениями, хотя все очень зависит от реализации), к тому же является масштабируемой (опять же, если реализация не хромает). Вопрос производительности и масштабируемости - это конечно дело приложения и его архитектуры, но тем не менее существуют некоторые советы, позволяющие сделать Ваше приложение более эффективным.

В этой статье мы рассмотрим общие практики и советы при построении нагруженных систем на основе PHP.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Масштабируемость и производительность… Первые вопросы

29 Май 2009

words
Создано на wordle

Эта картинка обычно отражает мысли человека, перед которым стоят два факта:

  1. Система растет
  2. Производительность падает

Закапываясь в проблемы производительности и масштабирования, мы зачастую забываем и путаем что и зачем мы делаем. В этой статье мы вернемся к первым вопросам, на которые необходимо отвечать постоянно, что-бы не збиваться с курса.

Читать далее…

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com