监控和跟踪工作流应用程序实例

发布于 2024-11-25 02:52:36 字数 414 浏览 0 评论 0原文

我们创建了使用工作流应用程序实例的自定义工作流主机。 现在我们正在致力于监控和跟踪,据我所知,两者的解决方案是使用 TrackingParticipant。我知道有很多 WF 服务支持使用 AppFabric 进行监控,但不支持工作流应用程序。

因此,我们决定创建一个 TrackingParticipant,根据跟踪记录的类型触发不同的事件,然后我们有 2 个服务订阅某些事件。这两个服务使用实体框架写入不同的数据库:MonitoringService(InstanceStore 中的自定义表)和 TrackingService(框架表?)。

性能对我们来说非常重要,因为我们可以同时运行大量工作流实例(+10000)。

所以,我的问题是: - 是否有工具(事件收集,ETW,..)提供了我们没有使用的框架并且可以提高性能? - 在wf跟踪中使用EF是错误的吗?

We created our custom workflow host that use workflowapplication instances.
Now we are working in monitoring and tracking, and as far as I know the solution for both is using a TrackingParticipant. I know that there are a lot of support for WF services for monitoring using AppFabric, but not for workflowapplication.

So, we decided to create a TrackingParticipant that fires different events depend on the type of the trackingrecord and then we have 2 services that are subscribed to some of the events. These 2 services write in different databases using entity framework: MonitoringService(custom tables in the InstanceStore) and TrackingService (Framework tables?).

The performance is really important for us because we could have a lot of workflow instances running at the same time (+10000).

So, my questions are:
- Are there tools(event collection, ETW,..) that offers the framework that we are not using and can improve the performance?
- Is it wrong to use EF in wf tracking?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

感性不性感 2024-12-02 02:52:37

您可以使用 EtwTrackingParticipant 将跟踪写入 Windows 事件日志,该日志可以与 WorkflowApplication 一起正常工作。

除了使用EF将跟踪信息保存到数据库之外没有问题。请记住,这会产生额外的开销,因此最好让 TrackingParticipant 将消息放入队列中,并在后台线程上执行实际的数据库插入(如果您预计会出现严重负载)。

There is an EtwTrackingParticipant you can use to write tracking into the the windows event log that will work just fine with a WorkflowApplication.

Other than that using EF to save the tracking information to the database is no problem. Keep in mind that this will generate extra overhead so it is best to have the TrackingParticipant put messages in a queue and do the actual database inserts on a background thread if you expect any serious load.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文