我正在尝试为Or良设置一个测试环境,该环境使用SQL Server进行活性测试。这是我的服务器配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<OrleansConfiguration xmlns="urn:orleans">
<Globals>
<Liveness LivenessType="SqlServer" DeploymentId="42783519-d64e-44c9-9c29-111111111133" DataConnectionString="Data Source=.\\SQLEXPRESS;Initial Catalog=Orleans;Integrated Security=True;" />
<!--<SeedNode Address="localhost" Port="11111" />-->
</Globals>
<Defaults>
<Networking Address="localhost" Port="11111" />
<ProxyingGateway Address="localhost" Port="30000" />
<Tracing DefaultTraceLevel="Info" TraceToConsole="true" TraceToFile="{0}-{1}.log">
<TraceLevelOverride LogPrefix="Application" TraceLevel="Info" />
</Tracing>
<Statistics MetricsTableWriteInterval="30s" PerfCounterWriteInterval="30s" LogWriteInterval="300s" WriteLogStatisticsToTable="true" />
</Defaults>
<Override Node="Primary">
<Networking Address="localhost" Port="11111" />
<ProxyingGateway Address="localhost" Port="30000" />
</Override>
</OrleansConfiguration>当我使用这个配置时,我在运行时会得到这个错误:
MembershipTableGrain不能在没有种子节点的情况下运行--请检查您的筒仓配置文件并确保它指定了一个SeedNode元素。或者,您可能希望将AzureTable用于LivenessType。参数名称: grain = MembershipTableGrain Exception = System.ArgumentException: MembershipTableGrain不能在没有种子节点的情况下运行--请检查您的筒仓配置文件,并确保它指定了一个SeedNode元素。或者,您可能希望将AzureTable用于LivenessType。
更进一步,日志显示活性是MembershipTableGrain (这是默认的,需要一个SeeNode)。我在这里错过了什么?
发布于 2016-01-06 19:10:03
我的SQLServer成员的筒仓配置如下所示
<?xml version="1.0" encoding="utf-8"?>
<OrleansConfiguration xmlns="urn:orleans">
<Globals>
<SystemStore SystemStoreType="SqlServer" DeploymentId="YYYYY" DataConnectionString="Server=THESERVER;Database=Orleans;User ID=USER;password=PASSWORD;"/>
</Globals>
<Defaults>
<Networking Address="" Port="11111"/>
<ProxyingGateway Address="" Port="30000"/>
</Defaults>
</OrleansConfiguration>不需要指定活性类型。它通过查看SystemStoreType就知道了这一点。
客户端配置确实需要指定的网关。
<ClientConfiguration xmlns="urn:orleans">
<SystemStore SystemStoreType ="SqlServer"
DeploymentId="YYY"
DataConnectionString="Server=THESERVER;Database=Orleans;User ID=USER;password=PASSWORD;" />
<GatewayProvider ProviderType="SqlServer"/>
</ClientConfiguration>发布于 2016-01-07 03:36:29
您还可以使用可编程API进行配置,而不是使用XML。
发布于 2016-01-06 16:16:18
我发现了问题。这不是如何改变活性类型。应该是这样的:
<SystemStore SystemStoreType="SqlServer" DeploymentId="42783519-d64e-44c9-9c29-111111111133" DataConnectionString="Data Source=.\SQLEXPRESS;Initial Catalog=Orleans;Integrated Security=True;" />
<Liveness LivenessType="SqlServer" />另外,您必须确保参考"Microsoft.Orleans.OrleansSqlUtils“NuGet包并运行此SQL创建脚本
https://stackoverflow.com/questions/34620854
复制相似问题