Моя личная любимая ферма WCF или WebService перекачивает данные в очередь сообщений Microsoft (MSMQ), а сервер приложений (1 или более) преобразует данные и помещает их в базу данных.
По мере углубления (если вам когда-либо понадобится) вы можете использовать функции MSMQ для обработки тайм-аутов, буферизации загрузки, «мертвых писем», сбоев сервера, чего угодно. Рассмотрим эту статью .
На стороне, обращенной к сети, поскольку она не имеет состояния и тонка, вы можете легко масштабировать этот слой, не задумываясь о сложной балансировке нагрузки. Вы можете использовать балансировку нагрузки DNS для запуска, а затем перейти к лучшему решению, когда вам это нужно.
В качестве дальнейшего примечания, используя MSMQ, вы также можете увидеть, как далеко «отстает» система, посмотрев, сколько сообщений находится в очереди. Если это число близко к 0, то вам хорошо. Если это число непрерывно растет, вам нужно больше производительности (добавьте еще один сервер приложений).