0
私は、既存の領事クラスターをテストオルレアンアプリケーションのメンバーシッププロバイダーとして使用しようとしています。 Orleans.Runtime.Host.ConsulBasedMembershipTableのいずれかのゲートウェイを見つけることができませんでしたサイロ領事とオルレアンのクラスター会員を設定しよう
に私のクライアントアプリケーションを接続するとき
は、私はこのエラーを取得します。オルレアンのクライアントは初期化できません。
取得されるエントリには、ProxyPortが定義されていないため、破棄されます。つまり、空の結果セットです。
私はこのようなサイロを初期化:
var clusterConfiguration = new ClusterConfiguration();
clusterConfiguration.Globals.DataConnectionString = "http://localhost:8500";
clusterConfiguration.Globals.DeploymentId = "OrleansPlayground";
clusterConfiguration.Globals.LivenessType = GlobalConfiguration.LivenessProviderType.Custom;
clusterConfiguration.Globals.MembershipTableAssembly = "OrleansConsulUtils";
clusterConfiguration.Globals.ReminderServiceType = GlobalConfiguration.ReminderServiceProviderType.Disabled;
var silohost = new SiloHost("Fred", clusterConfiguration);
silohost.InitializeOrleansSilo();
startup = Task.Factory.StartNew(() =>
{
return silohost.StartOrleansSilo();
});
return true;
そして、私はこのように私のクライアントアプリを設定します。私はPROXYPORTではないことがわかりますConsulUtilsのコードを見てみると
var config = new ClientConfiguration();
config.CustomGatewayProviderAssemblyName = "OrleansConsulUtils";
config.DataConnectionString = "http://localhost:8500";
config.DeploymentId = "OrleansPlayground";
config.GatewayProvider = ClientConfiguration.GatewayProviderType.Custom;
GrainClient.Initialize(config);
エントリが保存されるときにセットされる(すなわち0である)。だから私はサイロを初期化するときに問題があると思っていますが、それは何かを理解できません!
ありがとうございます!私はそれを問題として追加しました - https://github.com/dotnet/orleans/issues/2370 –