簡體   English   中英

Orleans為Liveness指定SqlServer

[英]Orleans Specify SqlServer for Liveness

我正在嘗試為奧爾良設置一個使用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無法在沒有Seed節點的情況下運行 - 請檢查您的silo配置文件並確保它指定了SeedNode元素。 或者,您可能希望將AzureTable用於LivenessType。 參數名稱:grain = MembershipTableGrain Exception = System.ArgumentException:MembershipTableGrain無法在沒有Seed節點的情況下運行 - 請檢查您的silo配置文件並確保它指定了SeedNode元素。 或者,您可能希望將AzureTable用於LivenessType。

更進一步說,日志說Liveness是MembershipTableGrain(這是默認值並需要SeeNode)。 我在這里錯過了什么?

我的SQLServer成員資格的silo配置如下所示

<?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>

您還可以使用可編程API進行配置,而不是使用XML。

我發現了這個問題。 這不是如何改變活力類型。 它應該是這樣的:

<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創建腳本

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM