我有本地和远程dbs。出于某种原因,我想每隔5分钟将本地和远端的同步。我应该使用一种服务来执行同步使用计时器或在Windows服务器上安排任务吗?调度任务与服务
Q
调度任务与服务
0
A
回答
2
我以前总是为定时任务制作Windows服务。但几年前,我转而采用任务调度程序的方式,没有遗憾。
下面是我使用任务计划方法发现的优点:
更少的代码编写(主要是因为你没有一个
Timer
的开销)容易调试(只需点击F5并运行它,因为这是一个正常的EXE)
更容易启动临时执行(如果您想要立即检查结果,而不是等到下次定时执行n)
P.S.为了将来的参考,这种类型的问题应该在Programmers Stack Exchange中真的被问到,因为它是关于设计选项,而不是现有代码的问题。
1
如果您使用的是MS SQL Server,并且本地(源)服务器至少有标准版或更高版本,那么您应该考虑使用复制(SQL Server Express不能用作发布服务器或分发服务器)。如果本地服务器具有Express版本,但远程服务器的标准版本或更高版本应在远程端设置PULL订阅以从快速服务器提取数据。
如果复制不是这种情况,那么我会提供使用计时器使用服务(使用SYSTEM帐户运行),因为您需要指定将使用哪个Windows帐户运行计划任务的任务。当帐户的密码发生变化时,您的任务将无法执行,甚至更糟糕,您将无法获得任何有关它的信息。
如果您的频率很长(每周一次或一天一次),那么使用服务应该被视为浪费系统资源,但我认为5分钟内可以接受。
0
您是否使用Windows作为操作系统?如果是的话,我会编写一个脚本文件来同步数据库,并将脚本放到Task Scheduler中。
对于Ubuntu,预定任务将是我的选择...
相关问题
- 1. 调度任务服务
- 2. 与任务调度
- 3. Grails服务和弹簧任务调度
- 4. 调度服务中的重复任务
- 5. 调度任务与powershell
- 6. 任务与继续调度
- 7. 任务调度
- 8. CodeIgniter任务调度程序将任务调度到任务调度程序
- 9. 任务调度程序与WCF服务参考异步功能
- 10. 监控服务器,进程,服务,任务调度状态
- 11. MPI任务调度
- 12. CRON:调度任务
- 13. Lua任务调度
- 14. Cordova调度任务
- 15. 调度任务c#
- 16. 调度Rake任务
- 17. 在任务调度
- 18. 创建任务调度程序任务
- 19. 调度任务使用任务调度在php
- 20. 没有窗口任务调度程序的调度任务
- 21. 调度任务与忙等待
- 22. 每天两次调度任务与Laravel
- 23. 调度与重叠周期性任务
- 24. 耙任务调度与每当
- 25. Java调度服务
- 26. 指定任务调度秒
- 27. 任务调度在Windows
- 28. 任务调度和WaitHandles
- 29. 任务调度设置
- 30. Laravel测试任务调度