简体   繁体   中英

Concept: Using WCF Service VS. Sockets VS.?

We are developing an Client-Server-Scenario where the client application will be installed on hundred or thousands of clients.

We need the following:

  • Client application (100-1000 clients)
  • Administrator Console Application (10-50 administrators)
  • WCF Service or TCP Socketserver or ? (other possibilities) that will interact with the client application, administrator console and a Microsoft SQL Server

     CLIENT -> SERVICE -> write information 2 DB CLIENT <- SERVICE -> read data records of DB CONSOLE <- SERVICE -> read data records of DB CONSOLE -> SERVICE -> write information 2 DB 

So, what's the best solution for our scenario? Should we use a WCF Service, TCP Socketserver or something else? What are the advantages and disadvantages?

If you have control over all of the applications that will be communicating with your server application and can guarantee they will always run on Windows (as opposed to Mono), I would recommend WCF since it will handle most of the heavy lifting for you. If you're running .NET 4 then you can take advantage of the new WCF Discovery functionality to reduce your administration headaches as well.

If you choose to use discovery though I'd recommend building in a service location cache as well though because 100-1000 UDP broadcasts over and over again could bring your network to its knees (and then you're network admin will blame you for network problems until the end of time).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM