积极答复者
未找到服务配置文件。请确保服务 Contest 的配置文件部署到 %CCP_SERVICEREGISTRATION_PATH%

问题
答案
-
参见iiFlame同学在这里的解释:http://social.msdn.microsoft.com/Forums/zh-CN/WindowsHPCServer/thread/877b3abc-ec50-4614-98ed-68a6134815df
如果是在本地集群配置Contest服务,需要把示例代码中的Contest.config复制到环境变量%CCP_SERVICEREGISTRATION_PATH%所指的目录,默认为\\你的头节点名字\HpcServiceRegistration 目录。还要注意修改其中<microsoft.Hpc.Session.ServiceRegistration><service assembly="c:\Services\AsianOptionsService.dll" 让它指向你的service代码。
- 已标记为答案 Zhen WEI MSFTModerator 2011年10月19日 12:51
2011年10月19日 12:51版主 -
开发人员完成SOA服务代码后需要两步来部署一个服务到HPC系统:1)把该服务的配置文件(ServiceName.config,文件名必须与服务同名)放在环境变量%CCP_SERVICEREGISTRATION_PATH%所指的目录(默认为\\你的头节点名字\HpcServiceRegistration 目录),这样HPC就知道有这样一个服务可以使用,2)把SOA服务的dll放在某个HPC节点访问得到的路径,比如共享文件夹或每个节点都有的绝对路径,然后在该服务的配置文件(ServiceName.config)里service assembly部分指向该路径,这样就告诉HPC系统从哪里加载该服务代码。
举例说明:
- 书中示例,服务是AsianOptionsService,故服务的配置文件为AsianOptionsService.config,其中service assembly部分指向c:\Services\AsianOptionsService.dll。
- 比赛示例,服务是Contest,故服务的配置文件为Contest.config,其中service assembly部分指向c:\Services\AsianOptionsService.dll。你需要自己手动作这两步部署--1)把Contest.config放在环境变量%CCP_SERVICEREGISTRATION_PATH%所指的目录(默认为\\你的头节点名字\HpcServiceRegistration 目录)。 2)把AsianOptionsService.dll 放在c:\Services。
- 实际比赛环境:服务是Contest,故服务的配置文件为Contest.config,其中service assembly部分指向[你的ftp根目录]\Service.dll,这两部分已经由主办方部署好了,你只需要上传Service.dll。如果你要在本地模拟上海超算的比赛环境,就要自己手动作这两步部署。
- 已标记为答案 Zhen WEI MSFTModerator 2011年10月19日 13:36
- 已编辑 Zhen WEI MSFTModerator 2011年10月19日 14:13
2011年10月19日 13:35版主
全部回复
-
参见iiFlame同学在这里的解释:http://social.msdn.microsoft.com/Forums/zh-CN/WindowsHPCServer/thread/877b3abc-ec50-4614-98ed-68a6134815df
如果是在本地集群配置Contest服务,需要把示例代码中的Contest.config复制到环境变量%CCP_SERVICEREGISTRATION_PATH%所指的目录,默认为\\你的头节点名字\HpcServiceRegistration 目录。还要注意修改其中<microsoft.Hpc.Session.ServiceRegistration><service assembly="c:\Services\AsianOptionsService.dll" 让它指向你的service代码。
- 已标记为答案 Zhen WEI MSFTModerator 2011年10月19日 12:51
2011年10月19日 12:51版主 -
开发人员完成SOA服务代码后需要两步来部署一个服务到HPC系统:1)把该服务的配置文件(ServiceName.config,文件名必须与服务同名)放在环境变量%CCP_SERVICEREGISTRATION_PATH%所指的目录(默认为\\你的头节点名字\HpcServiceRegistration 目录),这样HPC就知道有这样一个服务可以使用,2)把SOA服务的dll放在某个HPC节点访问得到的路径,比如共享文件夹或每个节点都有的绝对路径,然后在该服务的配置文件(ServiceName.config)里service assembly部分指向该路径,这样就告诉HPC系统从哪里加载该服务代码。
举例说明:
- 书中示例,服务是AsianOptionsService,故服务的配置文件为AsianOptionsService.config,其中service assembly部分指向c:\Services\AsianOptionsService.dll。
- 比赛示例,服务是Contest,故服务的配置文件为Contest.config,其中service assembly部分指向c:\Services\AsianOptionsService.dll。你需要自己手动作这两步部署--1)把Contest.config放在环境变量%CCP_SERVICEREGISTRATION_PATH%所指的目录(默认为\\你的头节点名字\HpcServiceRegistration 目录)。 2)把AsianOptionsService.dll 放在c:\Services。
- 实际比赛环境:服务是Contest,故服务的配置文件为Contest.config,其中service assembly部分指向[你的ftp根目录]\Service.dll,这两部分已经由主办方部署好了,你只需要上传Service.dll。如果你要在本地模拟上海超算的比赛环境,就要自己手动作这两步部署。
- 已标记为答案 Zhen WEI MSFTModerator 2011年10月19日 13:36
- 已编辑 Zhen WEI MSFTModerator 2011年10月19日 14:13
2011年10月19日 13:35版主 -
多谢!
可是的确是比赛实例,也就是GuidelineAndSample\ContestSample\AsianOptionsService文件夹里面的contest.config中service assembly部分指向AsianOptionsService.dll啊,我很困惑,能举个例子怎么修改吗?多谢了!
<microsoft.Hpc.Session.ServiceRegistration>
<service assembly="c:\Services\AsianOptionsService.dll"
includeExceptionDetailInFaults="true"
maxConcurrentCalls="0"
>
<!--Below is a sample for adding environment variables to the service
<environmentVariables>
<add name="myname1" value="myvalue1"/>
<add name="myname2" value="myvalue2"/>
</environmentVariables>-->
</service>
</microsoft.Hpc.Session.ServiceRegistration>
- 已编辑 qxy12 2011年10月19日 14:00
2011年10月19日 13:57 -
多谢!可是还是有问题。我生成了解决方案,并没有找到 AsianOptionsService.dll,只有Service.dll。需要改名在把它放到本机C:\Services文件夹下吗?这样还是报错
“Microsoft.Hpc.Scheduler.Session.SessionException”类型的未经处理的异常出现在 Microsoft.Hpc.Scheduler.Session.dll 中。
其他信息: 设置作业属性失败。调度器引发了异常: Microsoft.Hpc.Scheduler.Properties.SchedulerException: 找不到具有指定名称的作业模板。
在 Microsoft.Hpc.Scheduler.Store.SchedulerStoreSvc.OpenProfile(String profileName)
在 Microsoft.Hpc.Scheduler.SchedulerJob.InitProfile(String profileName)
在 Microsoft.Hpc.Scheduler.Session.Internal.Common.ThreadSafeSchedulerJob.SetJobTemplate(String templateName)
在 Microsoft.Hpc.Scheduler.Session.Internal.SessionLauncher.JobHelper.MakeJobProperties(SessionStartInfoContract startInfo, ISchedulerJob schedulerJob)
在 Microsoft.Hpc.Scheduler.Session.Internal.SessionLauncher.SessionLauncher.AllocateInternal(SessionStartInfoContract startInfo, String endpointPrefix, Boolean durable, Int32& sessionid, String& serviceVersion)。
2011年10月19日 14:45 -
或者我把Service.dll放到C:\Services下,将 c:\Services\AsianOptionsService.dl改成 c:\Services\Service.dll,还是报错
“Microsoft.Hpc.Scheduler.Session.SessionException”类型的未经处理的异常出现在 Microsoft.Hpc.Scheduler.Session.dll 中。
其他信息: 设置作业属性失败。调度器引发了异常: Microsoft.Hpc.Scheduler.Properties.SchedulerException: 找不到具有指定名称的作业模板。
在 Microsoft.Hpc.Scheduler.Store.SchedulerStoreSvc.OpenProfile(String profileName)
在 Microsoft.Hpc.Scheduler.SchedulerJob.InitProfile(String profileName)
在 Microsoft.Hpc.Scheduler.Session.Internal.Common.ThreadSafeSchedulerJob.SetJobTemplate(String templateName)
在 Microsoft.Hpc.Scheduler.Session.Internal.SessionLauncher.JobHelper.MakeJobProperties(SessionStartInfoContract startInfo, ISchedulerJob schedulerJob)
在 Microsoft.Hpc.Scheduler.Session.Internal.SessionLauncher.SessionLauncher.AllocateInternal(SessionStartInfoContract startInfo, String endpointPrefix, Boolean durable, Int32& sessionid, String& serviceVersion)。
2011年10月19日 14:50