如果我将(计时器作业)功能安装到场中的Sharepoint前端服务器,哪台服务器会执行该作业?所有人?
作业在作业级别锁定,Execute方法调用服务器场中一台特定计算机上的web服务,该服务处理所有处理。我的问题是,是否所有前端服务器都会尝试运行此作业?
或者网络专家希望在服务器场中提供一台新服务器,这样该作业就不会消耗主服务器的资源,但在我看来,我们将重复执行该作业。
迷惑了。有人知道这个问题的答案吗?
发布于 2009-11-23 19:25:08
计时器作业实际上可以部署到单个实例(如果您愿意,也可以部署到所有实例)。此链接提供了一个很好的答案:
Timer Job deployment via constructors
发布于 2011-05-26 21:57:49
有关SharePoint 2010,请参阅How to: Run Code on All Web Servers
MyTimerJob myTJ = new MyTimerJob(
"contoso-job-add-mobile-adapter",
webApp,
null,
SPJobLockType.None);请注意以下有关此代码的内容:
第三个参数可用于指定作业应在其上运行的特定服务器。当作业应在所有前端Web服务器上运行时,该值为null。
第四个参数确定作业是否在所有前端Web服务器上执行。传递SPJobLockType.None可确保它在运行Microsoft SharePoint Foundation Web应用程序服务的所有服务器上运行。相比之下,传递SPJobLockType.Job可确保它仅在运行Microsoft应用程序服务的第一个可用服务器上运行。(还有第三个可能的值。有关更多信息,请参见SPJobDefinition及其构造函数和其他成员的主题。)
https://stackoverflow.com/questions/1782280
复制相似问题