Последняя стабильная версия: 1.1.4

Рецепты

Создание высоконагруженных приложений

То, что вы используете фреймворк ещё не означает, что ваше приложение готово к высоким нагрузкам. Проектирование под высокие нагрузки включает в себя множество аспектов. Например:

  • Аккуратное проектирование БД (к примеру, сайты с очень интенсивным использованием БД не должны использовать внешние ключи).
  • Оптимальные запросы (например, не используйте JOIN если этого на самом деле не требуется).
  • Кэширование всего, чего только можно.
  • Несколько серверов, вынос БД, кеша на отдельный сервер.

При использовании Yii вы можете быть уверены, что фреймворк не будет узким местом вашего приложения. К тому же, в Yii реализована довольно мощная поддержка кеширования, которой не найти в большинстве других фреймворков.

Обработка при сохранении

Если какое-то действие повторяется каждый раз при выводе данных, например, перевод разметки bbcode или markdown в HTML, лучше сделать это один раз при сохранении и записать в БД.

Обработка по расписанию

При обработке большого количества данных стоит добавлять их в очередь и затем уже обрабатывать в фоне постепенно, используя cron.

Стоит изучить


  • Автор: Александр Макаров, Sam Dark (rmcreative.ru)