0

以下是有关我的开发环境的信息:

-MongoDB 3.0.0

-MongoDB C# 驱动程序版本 1.7.0.4714

-Microsoft Visual Studio 专业版 2013

-.NET 框架 4.0

在 MongoDB 数据库中,有一个用户集合,而 DiaryEntries 将是一个集合。

假设我们必须为我们的用户生成一些每日日记条目,如果用户没有登录来自己创建它。

我们可以创建一个 Windows 任务调度程序来运行一个 cron 作业 C# 程序来为我们应用程序的每个用户创建日记条目,而这些用户在当天没有它。

但是,随着时间的推移,应用程序中会有大量的用户,并且似乎每天都在运行一个 cron 作业 C# 程序,首先检查每个用户是否有一个每日日记条目,然后只创建一个每日如果用户当天没有日记条目。

我想知道是否有一种方法可以从 MongoDB 本身运行 Cron Job 以生成数据来完成上述任务。如果是,那么性能可能比从 C# 执行任务更好吗?如果它比从 C# 执行它的性能更好,那么请告诉我如何在 MongoDB 本身内实现它?

4

1 回答 1

1

不,MongoDB 没有任务调度程序。

以我的经验,cron 作业执行得非常好。如果您进行大量写入,那么使用批量 API 会带来很大的改进。

您可以在 JavaScript 中完成您的工作,然后使用 Mongo shell 运行它,但我没有体验过这种方式的性能优势。唯一真正的好处是编写 shell 脚本有时比其他语言更容易。

于 2016-01-20T09:12:11.510 回答