Я имею в виду, чтобы разработать службы WCF, который опрос всех устройств
ФОС служба не может «опросить». Потребитель может опросить, т. Е. Он может вызывать услугу снова и снова, однако нет шаблона опроса, встроенного в клиентский канал WCF. Поэтому необходимо запрограммировать любое поведение опроса.
Так что мой вопрос «Является ли WCF эффективно делать это, или я должен следовать другой подход»
То, что я подозреваю, что вы на самом деле хотите, чтобы ваши устройства для вызова службы и передачи данных, так то, что вы на самом деле спрашиваете, это Может ли служба WCF обрабатывать большой объем вызовов?, на который отвечает Да.
Однако, чтобы получить максимальную масштабируемость, вы должны разоблачить услугу для каждого вызова и сделать это через netTcpBinding (в основном сокеты), который использует оптимизированную кодировку и, следовательно, более высокую производительность.
Это будет доступно только потребителю, выполняющему стек клиента WCF. Если WCF недоступен на ваших устройствах, то лучшим вариантом является, вероятно, конечная точка HTTP через webHttpBinding, которая обеспечивает лучшую совместимость.
Можете ли вы предложить другую технологию?
Ну, если вы счастливы, используя HTTP на устройствах вы должны смотреть на nancyfx для размещения своей службы - это действительно хороший, легкий HTTP контейнер для .net.
Являются ли 20 000 устройств под управлением Windows? –
нет, они не подключены к окнам, они подключены от Ethernet – vikky
@wikky - Я имею в виду, они работают под управлением операционной системы Windows? Или, по крайней мере, они могут запускать .NET Framework? –