Любая веская причина оставаться на WCF?

Я пытаюсь создать стабильное приложение для веб-сервисов в течение последних 2-3 месяцев. около 2 месяцев назад я сделал выбор, чтобы перейти на WCF, чтобы воспользоваться преимуществами одиночных веб-сервисов.

С момента принятия этого решения у меня были некоторые реальные головные боли, связанные с сценариями IIS 6. К сожалению, поскольку большинство реальных клиентов по-прежнему используют Windows Server 2003 и IIS 6. Я получаю каждую ошибку WCF, которую вы можете себе представить.

Терпение клиента тонкое, и скоро это будет выглядеть так, как будто мы не можем предоставить надежное решение.

Я почти решил вернуться к сервисам ASMX, которые, по крайней мере, работали, и не пострадали от таких вещей, как:

Последовательность завершена удаленной конечной точкой. Пользователь превысил максимальное количество повторных попыток для конкретного сообщения. Из-за этого надежная сессия не может продолжаться. Надежный сеанс был сбит.

Объект связи, System.ServiceModel.Channels.ReplyChannel, не может использоваться для связи, поскольку он был прерван

Список продолжается... прежде чем я вернусь к ASMX, есть ли веские причины придерживаться WCF, потому что с такой скоростью мы могли бы потерять крупных клиентов по этой технологии?

Ответ 1

Хорошо, вернемся к asmx. Должен сказать, что меня уже гораздо меньше стрессовали.

Первое, что я заметил, это то, что вся установка была намного меньше свободной от боли. На одном этапе я думал: "Теперь нужно настроить клиентский конец", но потом я подумал: "Повесить - ничего не настроить!"

У меня тогда была 1 проблема с таймаутом, и я не мог понять, где установить значение тайм-аута в config, тогда я вспомнил, что "Hell это так же просто, как установка Service.Timeout = -1" в коде.

Да здравствует asmx. Вам не нужен Боинг 747, чтобы доставить вас через парк!

Наконец, отказ от ответственности: я реализовал службу, которая может занять от 1 часа до 12 часов. Если бы у меня была служба, которая выкачивала небольшие биты данных нескольким клиентам одновременно, я думаю, что я был бы в порядке с WCF.

Ответ 2

Потому что, в конечном итоге, сайты перейдут в IIS7?

Серьезно, если WCF был создан для IIS7 кажется, он работает лучше в IIS7, и у вас нет проблем с использованием WCF с IIS7, тогда выбор звучит довольно просто. Stick с WCF, только если клиент имеет IIS7. В противном случае используйте "более старую" технологию со "старой" технологией.