Загрузка прайс-листа

1. triviumfan 94 30.08.19 12:01 Сейчас в теме
Доброго дня.

Существует некая обработка загрузки прайс листа.
Алгоритм такой:
1. Считываем данные файла в ТЗ
2. Получаем текущие цены из ТЗ (одним запросом).
3. Создаём и проводим документы установки цен по 10к строк (сразу при обходе результата запроса).

Но во время запуска её все дико лагает (проседает диск + возникают блокировки, бывает сеансы отваливаются).
Возникли вопросы по оптимизации:
1. Как снизить нагрузку? (Запуск на ночное время не предлагать, там своих регламентов хватает)
2. Будет ли эффективна тут многопоточность?
3. Разбивать ТЗ на мелкие порции? Уменьшить количество строк в документе?
4. Отложенное проведение? Сначала записывать, а затем проводить? Фоново?

ЗЫ: Не более 1кк строк в прайс-листе, вся номенклатура уникальна. Обновляется он раз в месяц, т.е. с такой периодичностью запускают её. Форматы файлов: mdb и csv. Обычное приложение, платформа 8.3
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dream_kz 129 30.08.19 13:04 Сейчас в теме
(1) Надо уменьшать длительность транзакций, делать порции по 1к, многопоточность не поможет, так как загрузка итак большая, отложенное проведение тоже поможет, сначала просто записать документы, потом через время провести. Правда по времени обработка увеличится, но надо же нагрузку снизить
triviumfan; +1 Ответить
5. triviumfan 94 30.08.19 14:04 Сейчас в теме
(2) Спасибо, попробую поместить в массив документов для проведения и в конце провести, плюс уменьшить количество строк в документе.
7. triviumfan 94 30.08.19 15:16 Сейчас в теме
(2) Время выполнения значительно увеличилось, на тестовой базе проверял, прямо в несколько раз =\ и документов в 10 раз больше (1к строк вместо 10).
3. YannikAlx 43 30.08.19 13:06 Сейчас в теме
Так для начала определите какой именно процесс просаживает сервер а уж потом решайте как улучшить...

Какая многопоточность, если вам и в 1 поток не хватает мощности!
Вы видимо неверно понимаете суть многопоточности - она укоряет скорость обработки , ПРИ наличии лишней мощности сервера.
triviumfan; +1 Ответить
4. platonov.e 159 30.08.19 13:07 Сейчас в теме
Читал статью, что многопоточность помогла при перепроведении документов, в смысле намного быстрей перепровелись документы. Только я не помню, они один вид документа перепроводили или несколько...
6. FetisovAN 30.08.19 14:16 Сейчас в теме
(4) можно и один вид документов, только аккуратно. Помню для проведения реализаций, подготавливали массивы документы с разделением по контрагентам. чтобы документы одного контрагента шли в одном потоке.
8. triviumfan 94 02.09.19 09:55 Сейчас в теме
(4) Попробовал - не помогло) Разделял документы по типам цен.
platonov.e; +1 Ответить
9. platonov.e 159 02.09.19 10:04 Сейчас в теме
(8) Отпишитесь пожалуйста если найдете решение) Интересно)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот