Веб аналитика с помощью фреймворка MongoDB Aggregation

До версии 2.1 для агрегации в MongoDB (группировка документов по ключам, вычисление общего или среднего значения и т.д.) приходилось использовать MapReduce., что довольно успешно делали программисты практически на интуитивном уровне. Конечно, присутствует определенный порог вхождения для полного понимания процесса, но использование MapReduce в приложении, написанном не на JavaScript, требует “хакерских” […]

Как создать таблицы в MySQL и MariaDB на сервере Ubuntu

Что такое MySQL и MariaDB? MySQL и MariaDB две наиболее распространенные СУБД, использующие язык запросов SQL. Довольно большое число приложений для Ubuntu в той или иной степени используют MySQL или MariaDB, чтобы хранить свои данные. В этой статье мы рассмотрим как создавать таблицы для MySQL и MariaDB. Все примеры, приведенные […]

Как базовые шаблоны помогают понять принцип работы контроллеров

Пол М. Джонс однажды завёл интересное обсуждение на тему применения шаблона MVC в веб, основные моменты которой он описал в статье Action-Domain-Responder. Предлагаю вам познакомиться с ней, после чего вы всегда сможете вернуться и прочитать эту статью. Хочу отметить, что я почти полностью разделяю мнение автора и, более того, я смог даже внести свою […]

Всё, что необходимо знать о HTTP2

Протокол передачи гипертекста, известный как HTTP, с 1999 года лежит в основе обмена данными в сети. Совсем недавно Инженерный Совет Интернета (IETF) объявил о готовности HTTP2. Это будет первое обновление протокола за 16 лет. Об этом заявил Марк Ноттингем, глава рабочей группы IETF HTTP, во вторник. Как только протокол HTTP2 […]

Обзор компонентов Symfony2 : Применение преобразователя данных

Довольно часто нам приходится сталкиваться с ситуацией, когда введенные пользователям данные необходимо привести к какому либо другому виду. Конечно можно вручную преобразовать их в контроллере. А что если эти данные вам понадобятся в еще одной форме в другом месте в приложении? Допустим вы используете связь один к одному между сущностями […]

Подготовка к Zend сертификации по PHP

Теги PHP Стандартные теги — наилучшее решение при разработке свободно переносимого приложения с учетом обратной совместимости, так как эти теги никогда не будут удалены и их также невозможно отключить через файл настройки. <?php … code ?> Тем не менее в начале страницы может присутствовать только один открывающий тег <?php. Короткие теги […]

азбираемся в HTTP прокси NGINX, балансировке нагрузки, буферизации и кешировании

В этой мы рассмотрим возможности сервера NGINX в http проксировании, что помогает перенаправлять запросы на бекэнд сервера для дальнейшей обработки. Довольно часто Nginx настраивают в качестве реверсивного прокси для упрощения масштабирования инфраструктуры или для перенапраления запросов на сервера, которые не предназначены для работы при большой нагрузке. Также мы затронем каким […]

Простая балансировка нагрузки для MySQL и PHP с помощью библиотеки mysqlnd

MySQL всегда занимал первое место в качестве СУБД для работы с PHP. Так было практически с создания языка. Конечно сейчас, применяются и PostgreSQL, SQL Server или Oracle, но для работы в web зачастую используется MySQL. Выбор пал на MySQL потому, что на запуск решения не приходилось тратить много времени. libmysqlclientраспространялся вместе […]

Обзор компонентов Symfony2 : Авторизация

В случае если любой из провайдеров аутентификации (см. Провайдеры аутентификации) подтвердит непроверенный токен, то будет возвращен аутентифицированный токен. Аутентификационный подписчик должен напрямую установить этот токен в TokenStorageInterface при помощи метода [setToken()](http://api.symfony.com/2.6/Symfony/Component/Security/Core/Authentication/Token/Storage/TokenStorageInterface.html#setToken()).

Что нового в Symfony 2.7: Twig в роли полноправной составляющей фреймворка

Когда я (далее Я заменяйте на Fabien Potencier) начинал работать над Symfony2, twig не существовал вовсе. Поэтому для упрощения работы с PHP я создал Symfony Templating Engine. Позднее, осознав все неудобства работы с PHP в качестве шаблонизатора, я решил написать свой язык для шаблонов, а именно — Twig, в основу […]