RBAC в Yii2 без хаоса: роли, разрешения и проверка доступа
RBAC в Yii2 быстро становится запутанным, если роли создаются под каждого сотрудника. Разбираем permissions, роли, миграции прав и проверку доступа.
Читать далееЗаметки о PHP, Yii2, legacy-коде, архитектуре и доработке веб-проектов.
RBAC в Yii2 быстро становится запутанным, если роли создаются под каждого сотрудника. Разбираем permissions, роли, миграции прав и проверку доступа.
Читать далееОчередь Yii2 может молча остановиться из-за упавшего worker, Redis, неправильной PHP-версии, memory leak, прав, зависшей задачи или отсутствия логов.
Читать далееПовтор запроса к API не должен создавать две сделки, два заказа или две оплаты. Разбираем external_id, retry, статусы, логи и защиту от дублей.
Читать далееN+1 в Yii2 часто появляется незаметно: список товаров, заказов или пользователей открывается медленно из-за ленивой загрузки связей в цикле.
Читать далееМиграция на production должна учитывать откат, индексы, большие таблицы, повторный запуск, проверку существования колонок и безопасную работу с данными.
Читать далееAPI должен возвращать понятные ошибки, стабильный формат ответа и предсказуемые версии. Иначе интеграции ломаются даже при небольших правках.
Читать далееDeadlock возникает, когда транзакции ждут друг друга. Разбираем SHOW ENGINE INNODB STATUS, порядок обновлений, индексы, короткие транзакции и retry.
Читать далееФоновые задачи часто ломаются незаметно. В статье — как проверять cron, очереди Yii2, блокировки, логи и зависшие процессы на рабочем проекте.
Читать далееОбновление зависимостей в legacy-проекте лучше делать небольшими шагами. Разбираем безопасный порядок: composer.lock, аудит, тестовый стенд и откат.
Читать далееДубли товаров после импорта появляются из-за слабого ключа сопоставления. Нужно заранее выбрать SKU, barcode, external_id или связку поставщика и артикула.
Читать далееОставьте ваш номер телефона, и мы перезвоним вам в ближайшее время
Проверим скорость, SEO, безопасность и UX. Вернемся с чек-листом рекомендаций в течение 2 рабочих дней.
Ваша заявка принята. Мы свяжемся с вами в ближайшее время.