Visual studio SharePoint 2010-自定义服务应用程序、全局部署、服务仅在单个服务器上运行?

Visual studio SharePoint 2010-自定义服务应用程序、全局部署、服务仅在单个服务器上运行?,visual-studio,wcf,sharepoint,sharepoint-2010,application-server,Visual Studio,Wcf,Sharepoint,Sharepoint 2010,Application Server,经过近一周的研究和微软的支持,我想我应该在这里问一下,因为我觉得我离答案还很远,不想花太多时间来解决这个问题 我已经基于网络上的所有示例和文档创建了一个定制的SharePoint 2010服务应用程序 我的环境是一个两台服务器的服务器场,其中server1是我的管理中心和数据库主机(以及大量其他SharePoint服务),server2有一个相同的功能列表,只是我已经继续并禁用了所有服务。我现在的想法是专门使用server2作为我的“定制服务”服务器。一旦我为我们的服务器场设计了最佳拓扑结构,这

经过近一周的研究和微软的支持,我想我应该在这里问一下,因为我觉得我离答案还很远,不想花太多时间来解决这个问题

我已经基于网络上的所有示例和文档创建了一个定制的SharePoint 2010服务应用程序

我的环境是一个两台服务器的服务器场,其中server1是我的管理中心和数据库主机(以及大量其他SharePoint服务),server2有一个相同的功能列表,只是我已经继续并禁用了所有服务。我现在的想法是专门使用server2作为我的“定制服务”服务器。一旦我为我们的服务器场设计了最佳拓扑结构,这种情况在将来可能会发生变化,但出于测试目的,最好区分这样的服务器

因此,我在VisualStudio2010中编写了所有自定义服务应用程序,并且我能够成功地执行全局部署,从而将解决方案中的二进制文件添加到两台服务器的程序集和配置单元文件夹中。我通过查看解决方案管理下的特定解决方案属性以及底层日志来验证此部署

然后,我继续并激活“管理场功能”下的功能

此时,虽然我还没有创建服务应用程序或其代理,但该服务在server1(也是Visual Studio在本地运行的服务器)上显示为“已停止”服务,而不是在server2上。因此,我在“管理服务应用程序”下创建了一个新的服务应用程序,该应用程序启动了该服务,除了server2似乎在任何地方都没有该服务之外,一切似乎都很好

所以我想知道,为了让这项服务在两台服务器上运行,我到底需要做些什么?最终,我将在server1上停止它,并使用server2上的服务实例作为服务器场中的唯一实例,但要实现这一点,我需要能够让它显示在server2上

我希望这是有道理的,我试图让它尽可能清楚,但请让我知道,如果有什么仍然不清楚,我会尽我所能,以不同的方式解释事情

从我所读到的内容来看,完全有可能在SharePoint场中的不同应用程序服务器上运行相同服务的实例。。。然而,我似乎根本无法让它工作

对此,我们将不胜感激


干杯。

似乎对于所有自定义“服务应用程序”解决方案的全局部署,SharePoint 2010会在部署时首先自动创建服务实例。这可以通过查看服务器场中每个服务器的服务列表来验证。这真的很奇怪,因为它现在正在这样做,而以前没有这样做过,所以毕竟,在部署后的资源调配阶段,可能不需要手动创建服务实例。有人知道SharePoint 2010从何处获得执行此操作的指令吗?我很想知道这一切是如何在幕后发生的

看来我找到问题了。我从未告诉SharePoint为服务器场中的每个服务器创建单独的服务实例。我现在已经将该代码添加到安装事件接收器中,一切都按预期工作。无论如何谢谢你!如果你能把这个作为你问题的答案,也许会有更多的技术细节。然后你可以接受自己的答案——这样你就能帮助那些和你有同样问题的人。或者你可以删除这个问题。我遇到了完全相同的问题,在将serviceInstance添加到服务器场中的每台服务器后,我成功地看到了每台服务器上的实例。但我觉得我还是少了一些东西。如果我从我的服务器场中停止一个应用程序服务器(我的服务器场有两个应用程序服务器),并尝试调用另一个(我的自定义应用程序服务),则调用始终转到关闭的服务器,并且从不使用可用的服务实例。还有别的事要做吗?你试过了吗?