См. Асинхронное выполнение процедуры . Это единственный метод, который гарантирует выполнение даже в случае сбоя процесса ASP. Он также самонастраивается и может обрабатывать скачки нагрузки, запросы ставятся в очередь и обрабатываются по мере поступления ресурсов.
Суть решения заключается в использовании концепции Активация SQL Server , которая позволяет запускать хранимую процедуру в фоновом потоке в SQL Server без подключения клиента .
Решения, основанные на асинхронных методах SqlClient или на пуле потоков CLR, ненадежны, вызовы теряются при перезапуске процесса ASP и, кроме того, они создают очереди запросов в памяти, которые фактически инициируют перезапуск процесса из-за потребления памяти.
Решения на основе таблиц и заданий агента лучше, поскольку они надежны, но им не хватает самонастройки решений на основе активации.