【问题标题】:How can I limit calls for a WCF service within a time span?如何在一段时间内限制对 WCF 服务的调用?
【发布时间】:2008-10-26 19:39:42
【问题描述】:

我想编写一个每小时运行次数不能超过 X 次的 WCF 服务。如果服务在过去 60 分钟内被调用超过 x 次,我希望该服务将消息挂起到队列中。

任何想法如何限制服务? 我愿意在 WCF 堆栈中编写自定义组件。

【问题讨论】:

    标签: c# wcf enforcement


    【解决方案1】:

    使用数据库、XML 文件或其他一些数据存储,记录每次调用服务的日期和时间,以及它是否有效。每次调用服务时:

    1. 检查数据存储中有效的记录数 过去 60 分钟内。
    2. 如果小于 X,请进行工作,记录您工作的时间和时间。
    3. 如果将请求移动到队列中的次数超过 x,则记录该请求。

    您还需要检查要完成的工作队列(Windows 服务?),并确定队列中完成的工作是否计入每小时 X 次。

    这都是非常高级的,因为我们对您的项目一无所知,HTH。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-26
      • 2014-12-01
      • 1970-01-01
      • 2010-10-03
      • 1970-01-01
      • 1970-01-01
      • 2012-05-23
      相关资源
      最近更新 更多