我使用的是WCF Web API。我想防止方法调用中的泛洪。我已经将maxConcurrentCalls限制为10,但我还需要更多的限制。例如,如果某个客户端在3秒内调用了相同的方法,它必须抛出一个关于泛洪调用的异常。此外,如果某些客户端每分钟使用相同的参数调用相同的方法十次,则必须防止这种情况发生。我怎样才能以一种简单的方式做到这一点呢?
发布于 2012-01-07 22:58:30
在您的服务端,您无法阻止客户端发出请求。如果您预期的是大容量,那么您需要确保通过在前面放置负载平衡器来向外扩展您的服务端点。
最好的做法是实现每个会话的实例模式,然后如果同一会话上有太多的调用,则返回一个异常。这仍然意味着您将需要处理单个呼叫。
也许有一种方法可以使用网络负载均衡器来阻止多余的请求,但我认为这不太可能。
https://stackoverflow.com/questions/8765677
复制相似问题