【问题标题】:Service Fabric Actor Timers Performance ImplicationsService Fabric Actor 计时器性能影响
【发布时间】:2018-01-03 19:01:55
【问题描述】:

我们正在考虑可能将 Service Fabric Actor Timers 用于某种 TTL 管理服务。它有可能同时拥有 100 数十万个演员计时器。我们担心一次运行这么多 Actor 定时器的开销,但似乎没有任何关于 Actor 定时器的性能影响或底层机制的文档。任何指导将不胜感激。

【问题讨论】:

  • 好吧,既然演员计时器are just using regular timers 它并不是真正特定于服务结构/演员的。
  • 它们不仅仅是普通的计时器。它们的构建是为了尊重他们注册的参与者的基于回合的并发性。因此,根据参与者正在处理的其他流量的多少,肯定会有性能考虑
  • @Jessie Carter 演员的责任只是在它 TTLs 时发出警报并且有能力被取消。

标签: c# .net actor azure-service-fabric stateful-actor-service


【解决方案1】:

据我所知,Actor 的计时器在底层使用了一个轻量级的“System.Threading.Timer”,沿着一个委托创建,该委托有一个代码,以便在时机成熟时向您的“唤醒”回调发送调用。并且似乎调度就像任何其他传入请求一样发生,所以我会说带有委托的几个额外类是拥有 SF Actor Timer 的成本。

当然,如果您需要在计时器的回调中执行大量工作,那么它将锁定您的演员,因此这还取决于将阻止多少请求以及您可以多快离开回调。

【讨论】:

    猜你喜欢
    • 2018-07-04
    • 2016-03-11
    • 2018-01-11
    • 2017-12-22
    • 2016-08-12
    • 2017-07-19
    • 1970-01-01
    • 2020-04-03
    • 2015-09-06
    相关资源
    最近更新 更多