PHP

PHPDay


Никита Куликов
Tech&Team Lead
Ростов-на-Дону

— Как устроен приём апдейтов через webhook
— Очереди как буфер: помогают разгрузить webhook и обрабатывать всё асинхронно.
— Идемпотентность: защита от повторных апдейтов и дублей callback-запросов.
— Целостность и порядок: как обрабатываем события строго по очереди и избегаем гонок.
— Надёжная доставка: повторные попытки, логирование отправок, реакция на ошибки Telegram API.
— Модульная архитектура: бот как изолированный модуль в PHP-приложении, не захламляет основное ядро.
— Filament как административный интерфейс: справочники, рассылки, настройки
— Управление состоянием пользователя: как строим цепочки взаимодействий, многошаговые сценарии
— Обновление на лету: кнопки, тексты, логика рассылок
— меняем из админки.
— Rate limiting: как не упереться в лимиты Telegram при массовых отправках, используем троттлинг и очереди.
— Callback-кнопки без хаоса: архитектура обработки команд и колбэков, чтобы масштабировать без боли


Александр Луценко
Руководитель отдела разработки @ Vanta
Люберцы

История о том, как однажды захотелось упростить себе жизнь: Успехи и неудачи :)

* Первые шаги и первая эйфория

* Первые (и не последние) встреченные ограничения

* Как отревьюить монолит в 5 миллионов строк.

* Дообучение модели на коде компании. Сколько займет, сколько будет стоить, и нужно ли?

* Компромиссы.

* Рекомендации по сценариям использования.

* Итоги (tldr - скорее таки да, чем нет).


Евгений Некрасов
Ведущий разработчик @ RDN Group
Москва

- Машинное обучение в PHP — это реально: опыт внедрения PHP-ML в промышленной разработке.

- Как обучить систему понимать, что "Болт М8" и "У-образный болт М8" — это разные вещи?

- Почему регулярные выражения и ручная классификация не работают на больших объемах?

- Мешок слов и TF-IDF: от простого к более точному подходу в текстовой векторизации.

- PHP как полноценный ML-инструмент: без Python и TensorFlow


Помните FuzzBuzzEnterpriseEdition? Повторим?

Возьмём типичный проект и потихоньку, по шагам, перетащим его на DDD с луковой архитектурой и CQRS.

Луковая тем и примечательна, что в зависимости от объёма кода (и проекта) можно остановиться на любом шаге ("срезать углы") и не доводить до оверинжинеринга. Поэтому её можно назвать максимально универсальной, подходящей под любые проекты.

Даже тот самый пресловутый бложик...


Ольга Глеклер
Contributor @ Make WordPress
Санкт-Петербург

- Почему WordPress становится медленным

- WordPress Performance Team: разгоняем ядро

- Инструменты для анализа производительности

- Кеширование: как не выстрелить себе в ногу

- Работа с базой данных: Оптимизируем запросы, кастомизируем таблицы

- Архитектура “на вырост”

- Микрооптимизации — учимся "экономить на спичках"