Скачать mp3 / Весь mp3-архив

PHP подкаст #8

Абстрагируемся от файлового хранилища, API-first, который приносит счастье, pthreads и холивары, жесткий Code Sniffer, виагру всем поисковым ботам, очень серьезный ClickHouse, рамбл talk о перспективах фреймворков.

Закончилась серия из 3х статей от Etsy о том, как они уверовали в API-first подход и как он помог им мягко перейти на APIv3. Начинайте создавать API с контрактов!

RedHat наконец-то собирается выпустить RPM с PHP7.

Gaufrette — библиотека для абстрагирования от конкретного файлового хранилища. Используя специальный класс Filesystem для манипулирования файлами вы можете впоследствии легко мигрировать на почти любое файловое хранилище. От локальной файловой системы до Amazon S3 и GridFS. Также упрощается тестирование, если использовать InMemory адаптер. Вообщем, must have вещь.

Статья о разработке простого многопоточного (pthreads) сервера на PHP. pthreads-расширение — это реализация POSIX тредов. Предоставляются классы Threaded и несколько наследников. Наследуетесь от одного из классов Threaded и реализуете run-метод, который будет выполняться в отдельном потоке. Также есть Pool для менеджмента воркеров, которым можно сабмитить задачу.

Любопытная статья о создании крохотного лендинга для организации подписки участников групп на неограниченные сообщения от сообщества.

Один из вариантов использования Code Sniffer’а. Правила, правда, предлагают достаточно жесткие:

  1. A function should be no longer than 15 lines of code;
  2. The cyclomatic complexity of a function should not exceed 5;
  3. Functions should not take more than 4 input arguments.

Мое мнение, что лучше цикломатическую сложность поднять до 10. К слову, в написании ядра линукса используются высокие цикломатические сложности из-за обилия if / else if / else if ….

Забавная статья о bootleger-limiter.php. Называется она “Всем привет, я вебмастер и меня взломали”, а я бы назвал “Всем привет, я вебмастер и у меня виагра”. Скрипт работал только для поисковых ботов (скомпрометированный .htaccess) и подменял целиком контент отдаваемого сайта и поэтому в поисковой выдаче творились чудеса :).

Любопытная статья о ClickHouse (аналитическая столбцовая СУБД) от Яндекса. Летом Яндекс опубликовал этот инструмент, который они используют для Яндекс Метрики. В статье от СМИ2 компания выложила свой JS GUI для выполнения запросов к ClickHouse, а также PHP-драйвер. Кстати, ClickHouse использовался в ходе экспериментов на LHC для регистрации более 10 млрд событий с более чем 1000 аттрибутов у каждого. ClickHouse предоставляет SQL-like. Если вам нужно сделать GROUP BY по триллиону записей, то посмотрите вспомните про ClickHouse :).

Немного рэмбл-токинга, навеянного несвежим докладом о ZF3.

Самые используемые PHP-фреймворки (*):

Мои ощущения от того, каким должен быть современный фреймворк:

Пруфы:

Опубликовано: 13.11.2016
Теги: Amazon S3, ClickHouse, Code Sniffer, Etsy, Gaufrette, GridFS, POSIX, pthreads, RedHat, RPM, vk, столбцовая СУБД, холивар, цикломатическая сложность