Какой бы путь вы ни выбрали, я уверен, что любой вид регистрации замедлит производительность на сервере. Если вы в среднем 300 запросов в секунду, у вас есть количество потоков в секунду, конкурирующих за файл журнала. Некоторым потокам придется ждать, чтобы получить доступ к файлу журнала, и, если они будут достаточно поставлены в очередь, будет большая задержка.
Сказанное означает, что разница в производительности между ними будет незначительной - вы должны принять решение на основе вашего знакомства с технологиями.
WCF имеет встроенные функции диагностики, позволяющие записывать сообщения без написания кода (см. MSDN), но для изучения WCF требуется немного больше усилий. Преимущество этого заключается в том, что если вы заметили, что ведение журнала слишком сильно влияет на производительность, вы можете отключить его, не переписывая приложение.
Является ли ваша заявка только протоколов и вообще ничего не делать? Если это так, я бы рекомендовал вместо базы данных использовать базу данных (SQL Server, mySQL и т. Д.) - это обеспечит гораздо лучшую производительность.
Я действительно предпочитаю вариант базы данных, чтобы проблемы параллелизма и ведения домашнего хозяйства были решены из коробки. HttpModule получает текст POST в потоке, параметр Wcf получает данные POST, завернутые в xml (то есть xml в xml, потому что сам пост является мыльным конвертом). Модуль http выглядит так просто - с другой стороны, wcf является стандартом, поэтому я разместил вопрос. – Gerard