Задать вопрос
  • Правильная архитектура системы с тэгами?

    @diver23 Автор вопроса
    Спасибо за ответ.
    >вводить денормализацию тегов что бы ускорить выборку (помимо связей хранить массив тегов в сериализованном виде), тогда у нас и поиск по тегам будет работать хорошо и с джойнами не надо париться
    Об этом как-то не подумал, спасибо.

    "файлов могут быть сотни тысяч и тогда, как я понимаю могут быть проблемы у самой файловой системы"
    А по файловой системе подскажете?
  • Правильная архитектура системы с тэгами?

    @diver23 Автор вопроса
    Если я вас правильно понял.
    Допустим у меня в базе каждый пользователь создал 10 000 сообщений, пускай для каждого сообщения он подцепил по 5 тегов. При этом 3 тэга уникальные новые. Для 1000 пользователей мы имеем:
    база сообщений 10 000 000 строк
    база отношения сообщений к тэгам 50 000 000
    база тэгов 30 000 000 строк
    Не будет ли такая схема слишком затратной в плане ресурсов для базы данных?

    Потом вывод результатов:
    Мы выводим 50 сообщений, для каждого из них нужно вывести ещё и названия тэгов, так? Тэгов может быть от 0 и до 100. То есть после того как мы сделали запрос на поиск по тэгам мы длякаждого результирующего сообщения должны будем ещё и выбрать его тэги, верно? Итого запрос на поиск всех соответствующих сообщений + 50 запросов на получение тэгов для этих сообщений.
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    Да нет, сервис никакой там не используется. Лог php ошибок чистый, как будто никаких ошибок нету, а вот доступа к серверному логу нету…
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    Возвращаемый статус — обычный 404.
    При этом, если количество итераций уменьшить до ~300 — скрипт отрабатывает корректно. Т.е. сам по себе документ существует, тут видимо дело в каких-то серверных настройках, вот только в какую сторону смотреть не знаю.
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    while(($data = fgetcsv($handle, 5000, $separator)) !== FALSE)
    {
    $imageAdmin->importImagesFromUrls(false, array('http://www.alphashirt.com'.$data[16]), $importImages, $importImageErrors);
    if(empty($importImageErrors))
    {
    $update = array(
    'vcimage' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_TINY, true, false),
    'vcimagezoom' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_ZOOM, true, false),
    'vcimagestd' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_STANDARD, true, false),
    'vcimagethumb' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_THUMBNAIL, true, false)
    );
    $GLOBALS['ISC_CLASS_DB']->UpdateQuery('product_variation_combinations', $update, "vcsku='" . $GLOBALS['ISC_CLASS_DB']->Quote($data[1]) . "'");
    echo $data[1].'
    ';
    }
    }
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    Нет, нет. Я считываю одну строку — делаю импорт изображения на сервер, обновляю данные в базу данных и удаляю переменную, которая содержит эту строку.
    while(($data = fgetcsv($handle, 5000, $separator)) !== FALSE)
    {
    $imageAdmin->importImagesFromUrls(false, array('http://www.alphashirt.com'.$data[16]), $importImages, $importImageErrors);
    if(empty($importImageErrors))
    {
    $update = array(
    'vcimage' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_TINY, true, false),
    'vcimagezoom' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_ZOOM, true, false),
    'vcimagestd' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_STANDARD, true, false),
    'vcimagethumb' => $importImages[0]->getResizedFilePath(ISC_PRODUCT_IMAGE_SIZE_THUMBNAIL, true, false)
    );
    $GLOBALS['ISC_CLASS_DB']->UpdateQuery('product_variation_combinations', $update, «vcsku='». $GLOBALS['ISC_CLASS_DB']->Quote($data[1]). "'");
    }
    unset($data);
    }
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    Location — это вы имеете ввиду header? В коде нету редиректов.
    Определил error_handler/exception_handler/shutdown_function, однако никакого результата это не дало.
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    max_execution_time установлен в 0
    memory_limit установлен в 256
  • Скрипт не выполняется и переадресовывает на главную?

    @diver23 Автор вопроса
    Да, до 300 записей скрипт отрабатывает корректно.