Как создать транзакцию области в одном потоке из нескольких результатов веб-сервиса - PullRequest
0 голосов
/ 08 ноября 2018

У нас есть большой объем данных для вставки в базу данных областей. Данные поступают от нескольких веб-сервисов на общую сумму от 100 МБ до 1 ГБ . Нам нужно хранить каждый результат из сети с транзакцией . Если все веб-сервисы успешно загружены , после пост-обработки мы фиксируем базу данных .

В связи с тем, что область для этой транзакции требует работы в том же потоке и что веб-служба работает асинхронно , проблема, с которой мы сталкиваемся, заключается в том, что мы не можем вызывать одно и то же поток после результата веб-службы, как мы можем справиться с этой ситуацией?

Примечание:

  • Мы не можем загрузить все данные в память -> огромное количество данных подвергает риску исключение памяти

  • Хранение результата ответа веб-службы в файлах и загрузка файла за файлом не очень эффективны -> мы сделали это, но производительность плохая (мы тратим 30% на обработку управления декодированием файла…)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...