Проблема с Symfony4 и диспетчером событий, сценарий продолжается через 25 секунд после события

#php #symfony #symfony4 #symfony-eventdispatcher

#php #symfony #symfony4 #symfony-eventdispatcher

Вопрос:

у меня проблема с диспетчером событий на Symfony4. Сценарий продолжается через 25 секунд после завершения события . Здесь код:

контроллер (необходимая часть):

 $this->logger->notice("Log Start");
$response = new JsonResponse($responseArray, 200);
$this->eventDispatcher->dispatch(new FilterUserResponseEvent($user, $request, $response), FOSUserEvents::REGISTRATION_COMPLETED);
$this->logger->notice("Log End");
  

EventSubscriber (необходимая часть):

 $this->logger->notice("REGISTRATION_COMPLETED Start");
...
$this->logger->notice("REGISTRATION_COMPLETED End");
  

Результаты журналов:

 10:00:00 Log Start
10:00:00 REGISTRATION_COMPLETED Start
10:00:00 REGISTRATION_COMPLETED End
10:00:25 Log End
  

как это возможно? в моем скрипте нет ничего между окончанием события и другим журналом. может быть, это ошибка ядра symfony? Я хочу сказать, что это не систематично, это случается иногда.

спасибо за вашу помощь!

Комментарии:

1. Вы проверили, есть ли другие прослушиватели событий, которые также могут прослушивать ваше событие? Профилировщик Symfony может отображать их все, включая правильную временную шкалу

2. К сожалению, эта ситуация обнаруживается только на рабочем сервере. Я пытаюсь воспроизвести его в тестировании, чтобы отладить, как вы сказали.