代码之家  ›  专栏  ›  技术社区  ›  ashwnacharya

未调用SharePoint计时器作业

  •  6
  • ashwnacharya  · 技术社区  · 17 年前

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

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

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

    • 关于什么会导致计时器作业未被SharePoint定时服务接收以执行,有什么想法吗?如何解决此问题?

    • 有没有从多个前端服务器运行计时器作业的“gotcha”?计时器作业将在所有Web前端执行,还是任意一个前端执行?如何知道哪台机器将有我的事件日志?

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

    编辑:

    其中一位评论员,肖恩·麦克杜努,(谢谢肖恩!!)提出了一个很好的观点:

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

    现在,我的计时器工作负责定期向用户列表发送邮件。当前标记为spjoblocktype.job“

    • 如果我将其更改为spjoblocktype.none,这是否意味着我的计时器作业将在所有WFE中单独执行?(不需要,它会向所有用户发送多封电子邮件)

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

    2 回复  |  直到 13 年前
        1
  •  9
  •   Lars Fastrup    17 年前

    尝试使用net stop sptimerv3和net start sptimerv3从命令行重新启动SharePoint定时服务。我的猜测是,计时器服务正在使用旧版本的.NET程序集运行。升级wsp解决方案时,计时器服务不会自动重新加载程序集。

        2
  •  2
  •   Anatoliy Nikolaev    13 年前

    要执行此操作,请执行以下步骤:

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

    这个 URL 帮助了我。

    推荐文章