Какая версия PHP впервые представила типизацию аргументов и возвращаемых значений?
Anonymous Poll
5%
5.6
43%
7.0
36%
7.4
16%
8.0
Какое значение вернет функция array_unique() для массива с повторяющимися ОБЪЕКТАМИ?
Anonymous Poll
45%
Удалит все дублирующиеся объекты
17%
Сохранит только первый объект каждого уникального типа
22%
Вернет массив объектов без изменений
18%
Ошибка, так как объекты нельзя сравнивать
В таблице payments(idempotency_key UNIQUE). Повторный запрос с тем же ключом параллельно.
Anonymous Poll
3%
Оба INSERT успешны
87%
Первый успешен, второй упадёт по уникальному индексу
7%
Оба упадут по deadlock
4%
Оба закоммитятся, т.к. разные транзакции
У вас endpoint POST /payments с заголовком Idempotency-Key. Как гарантировать, что повторные запросы с тем же ключом не создадут дубль?
Anonymous Poll
12%
Хранить ключ в памяти PHP-процесса и проверять массивом
4%
Проверять наличие платежа по сумме и пользователю
20%
Делать SELECT + INSERT в одной транзакции без блокировок
64%
Делать атомарный SETNX (или INSERT ... ON CONFLICT DO NOTHING) и возвращать ранее созданный ресурс
Как PHP обрабатывает статическое свойство класса, если объект класса клонируется?
Anonymous Poll
24%
Создается новая копия статического свойства
54%
Статическое свойство не копируется, остается одно для всех объектов
4%
Выдается предупреждение о невозможности клонирования
19%
Клонируется только ссылка на статическое свойство
При конфликте версий Doctrine
Anonymous Poll
13%
Тихо перезатирает данные
71%
Бросает OptimisticLockException
16%
Ожидает, пока освободится строка
9%
Делает автоматический merge
DDD — границы агрегатов. За соблюдение кредитного лимита клиента при создании заказа кто отвечает?
Anonymous Poll
13%
Сервис корзины
20%
Агрегат Order
62%
Агрегат Customer (или доменный сервис вокруг него)
4%
Инфраструктурный валидатор в БД
Сколько попыток и задержки?
Anonymous Poll
17%
3 попытки: 10, 30, 90
76%
4 попытки: 0, 10, 30, 90
6%
4 попытки: 10, 30, 90, 180
2%
3 попытки: 0, 10, 30
Используется Doctrine transport. Какая семантика доставки сообщений?
Anonymous Poll
10%
Exactly-once
79%
At-least-once с возможностью ретраев и “failed”-queue
17%
At-most-once
14%
Гарантии зависят от версии PHP
Почему растёт RSS процесса-воркера?
Anonymous Poll
18%
Из-за JIT
44%
Из-за захвата $big в замыкании
32%
Из-за pcntl_fork() без exit
14%
Из-за GC, который всё очищает
Что реально ускоряет автозагрузку на проде?
Anonymous Poll
52%
composer dump-autoload -o (classmap оптимизация)
23%
composer install --no-dev без autoload-optim
2%
composer diagnose
27%
opcache.revalidate_freq=0 без preloading