SharePoint计时器作业未被调用

时间:2009-08-25 11:57:26

标签: sharepoint moss wss sharepoint-2007 timer-jobs

我有一个计时器作业,它已部署到具有多个Web前端的服务器上。

  • 此计时器作业从分层对象库中读取其配置。
  • 此计时器作业计划每天在服务器上运行。

但问题是这个计时器作业不会每天被调用。我已经在计时器作业的Execute()方法中实现了事件记录,但是我没有看到生成任何日志。

  • 有什么可能导致计时器作业无法被SharePoint定时服务执行的想法?我该如何解决这个问题?

  • 在多个前端的服务器上运行计时器作业是否有“问题”?计时器作业是否会在所有Web前端或其中任何一个仲裁中执行?如何知道哪台机器有我的事件日志?

  • 这可能是一个愚蠢的问题,但是有多个前端进行负载均衡会影响分层对象存储的行为方式吗?

编辑:

其中一位评论者Sean McDounough(谢谢Sean !!)提出了一个很好的观点:

“计时器作业是否在所有WFE上运行将是您在构造函数中指定的SPJobLockType枚举值的函数。使用值”None“表示作业将在所有WFE上运行。

现在,我的计时器工作负责将定期邮件发送到用户列表。目前它被标记为SPJobLockType.Job“

  • 如果我将其更改为SPJobLockType.None,这是否意味着我的计时器作业将分别在所有WFE中执行? (这是不希望的,它会通过多封电子邮件向所有用户发送垃圾邮件)

  • 或者是否意味着计时器作业将在任何一个WFE中执行,是否是任意的?

2 个答案:

答案 0 :(得分:9)

尝试使用NET STOP SPTIMERV3后跟NET START SPTIMERV3从命令行重新启动SharePoint计时器服务。我的猜测是计时器服务与旧版本的.NET程序集一起运行。升级WSP解决方案时,计时器服务不会自动重新加载程序集。

答案 1 :(得分:2)

为此,请按照下列步骤操作:

  • 停止定时器服务。
  • 单击“开始”,指向“管理工具”,然后单击“服务”。
  • 右键单击“Windows SharePoint Services Timer”,然后单击“停止”或“重新启动服务”。

URL帮助了我。