From your description, it seems: 1. initially the clients were able to connect to your server with no problem, so this rules out configuration problem 2. After a while server stopped responding, but you didn't say how long, and how big is the request rate, and whether the server stopped responding at all, or only intermittently responding. Based on this one possibility is that something is wrong on the server side. Did you noticed anything unusual on the server side? Things to look for is:
- Thread count -- was the thread pool being depicted (as some settings may set a cap on thread pool thread)? Especially try a fresh launch of the server and observe the thread count till it stopped responding, any pattern there? You may have dead locks, long blocking operations etc. which holds thread for too long.
- Memory -- is there a problem with memory leaks?
- Is it a self hosting service? Do you have proper code to catch ServiceHost.Faulted event (and restart the service)? If a ServiceHost is faulted, it'll not respond to any requests.
- See what WCF performance counter tells you, especially the queue size and number of active connections. From the performance counter, you'll know whether the service is taking any request, or if your throttling configurations are necessary at all.
- The ultimate diagnostic tool: turned on service side WCF tracing? Open a trace file will definitely tell you what happened with a request. If you see any exception in the tracing file, you'll find your root cause.