Ответы пользователя по тегу Массивы
  • Почему замедляется работа скрипта?

    @jaxel
    Каким образом парсите XML? На файлах большого объёма надо использовать способы, не загружающие файл в память. Например через XMLReader.

    Как происходит добавление в базу? Доктриной? Если да, то надо разбивать добавление на небольшие пачки. Через каждые 100-200 $em->persist нужно делать $em->flush() и удалять сущности из списка управляемых $em->getUnitOfWork()->clear()

    Ещё надо учесть, что в dev окружении каждый запрос профилируется, и при больших объёмах данных это даёт многократное замедление. Надо или делать запросы в prod окружении, или отключить профилирование:
    $this->em->getConnection()->getConfiguration()->setSQLLogger(null);
    
            foreach ($this->em->getEventManager()->getListeners() as $event => $listeners) {
                foreach ($listeners as $listener) {
                    $this->em->getEventManager()->removeEventListener($event, $listener);
                }
            }
    Ответ написан
    5 комментариев