Войти через email:
— Как устроен приём апдейтов через webhook — Очереди как буфер: помогают разгрузить webhook и обрабатывать всё асинхронно. — Идемпотентность: защита от повторных апдейтов и дублей callback-запросов. — Целостность и порядок: как обрабатываем события строго по очереди и избегаем гонок. — Надёжная доставка: повторные попытки, логирование отправок, реакция на ошибки Telegram API. — Модульная архитектура: бот как изолированный модуль в PHP-приложении, не захламляет основное ядро. — Filament как административный интерфейс: справочники, рассылки, настройки — Управление состоянием пользователя: как строим цепочки взаимодействий, многошаговые сценарии — Обновление на лету: кнопки, тексты, логика рассылок — меняем из админки. — Rate limiting: как не упереться в лимиты Telegram при массовых отправках, используем троттлинг и очереди. — Callback-кнопки без хаоса: архитектура обработки команд и колбэков, чтобы масштабировать без боли
История о том, как однажды захотелось упростить себе жизнь: Успехи и неудачи :)
* Первые шаги и первая эйфория
* Первые (и не последние) встреченные ограничения
* Как отревьюить монолит в 5 миллионов строк.
* Дообучение модели на коде компании. Сколько займет, сколько будет стоить, и нужно ли?
* Компромиссы.
* Рекомендации по сценариям использования.
* Итоги (tldr - скорее таки да, чем нет).
- Машинное обучение в PHP — это реально: опыт внедрения PHP-ML в промышленной разработке.
- Как обучить систему понимать, что "Болт М8" и "У-образный болт М8" — это разные вещи?
- Почему регулярные выражения и ручная классификация не работают на больших объемах?
- Мешок слов и TF-IDF: от простого к более точному подходу в текстовой векторизации.
- PHP как полноценный ML-инструмент: без Python и TensorFlow
Помните FuzzBuzzEnterpriseEdition? Повторим?
Возьмём типичный проект и потихоньку, по шагам, перетащим его на DDD с луковой архитектурой и CQRS.
Луковая тем и примечательна, что в зависимости от объёма кода (и проекта) можно остановиться на любом шаге ("срезать углы") и не доводить до оверинжинеринга. Поэтому её можно назвать максимально универсальной, подходящей под любые проекты.
Даже тот самый пресловутый бложик...
- Почему WordPress становится медленным
- WordPress Performance Team: разгоняем ядро
- Инструменты для анализа производительности
- Кеширование: как не выстрелить себе в ногу
- Работа с базой данных: Оптимизируем запросы, кастомизируем таблицы
- Архитектура “на вырост”
- Микрооптимизации — учимся "экономить на спичках"