我创建了一个简单的客户端服务器应用程序,以查看.net更新机制。 我有客户端赞助商。某些计算机中的租约已更新,而某些计算机中的租约从未更新。如果不进行续订,则如果我们正在发送某些事件,则会出现“找不到请求的服务”错误。我无法仅在某些计算机上找到导致续订失败的原因。
我尝试了以下方法: 1.在客户端和服务器计算机上禁用防火墙 2.停止使用防病毒软件,但无济于事。
public override Object InitializeLifetimeService() //Remotable Type has this method
{
lease = (ILease) base.InitializeLifetimeService();
if (lease.CurrentState == LeaseState.Initial)
{
lease.InitialLeaseTime = TimeSpan.FromSeconds(3);
lease.SponsorshipTimeout += TimeSpan.FromSeconds(10);
lease.RenewOnCallTime = TimeSpan.FromSeconds(2); }
return lease;
}
}
public TimeSpan Renewal(ILease lease) //this is client sponsor code
{
try
{
string message =
$" - Time since last renewal in seconds:{(DateTime.Now -
lastRenewal).TotalSeconds.ToString()}";
Console.WriteLine($"{DateTime.Now.ToString()} {message}");
lastRenewal = DateTime.Now;
}
catch (Exception ex)
{
_Logger.Log("Error when renewal : " + ex.Message + "Stack :" + ex.StackTrace);
}
return TimeSpan.FromSeconds(20);
}
我搜索了大多数论坛,但没有提供帮助。请有人指导我了解它仅在某些机器上不起作用的问题?