В настоящее время мы выполняем задание SQL, которое ежедневно архивирует данные в 22:00. Однако конечные пользователи жалуются, что с 10 до 12 часов на странице отображается ошибка тайм-аута.
Вот псевдокод задания
while @jobArchive = 1 and @countProcecessedItem < @maxItem
exec ArchiveItems @countProcecessedItem out
if error occured
set @jobArchive = 0
delay '00:10'
Хранимая процедура ArchiveItems захватывает 100 лучших элементов, созданных 30 дней назад, обрабатывает и архивирует их в другой базе данных и удаляет элемент в исходной таблице, включая другие связанные с ней таблицы. наконец устанавливает @countProcecessedItem с номером обработанного элемента. ArchiveItems также создает и удаляет временные таблицы, которые он использовал для хранения некоторых записей.
Примечание: , если предоставленная мной информация является неполной, ответьте, и я с удовольствием добавлю дополнительную информацию, если это возможно.