C# Redis和ServiceStack.Net Redis丢失数据
我正在测试Redis,但我有一个问题。如果我存储超过8000项,则会丢失超过2条记录。丢失的数据量与插入的记录量成正比C# Redis和ServiceStack.Net Redis丢失数据,c#,redis,C#,Redis,我正在测试Redis,但我有一个问题。如果我存储超过8000项,则会丢失超过2条记录。丢失的数据量与插入的记录量成正比 class ProdutoDTO { public long id { get; set; } public string name { get; set; } } using (var produtosRedis = redisClient.GetTypedClient<ProdutoDTO>()) { for (v
class ProdutoDTO
{
public long id { get; set; }
public string name { get; set; }
}
using (var produtosRedis = redisClient.GetTypedClient<ProdutoDTO>())
{
for (var i = 0; i < 15000; i++)
{
ProdutoDTO produto = new ProdutoDTO();
produto.id = produtosRedis.GetNextSequence();
produto.name = "test" + produto.id.ToString();
produtosRedis.Store(produto);
}
}
新代码:
class ProdutoDTO {
public long Id { get; set; }
public string name { get; set; }
}
因为,C Redis客户端与任何具有单个主键的POCO一起工作——默认情况下,主键应该是Id
关于C Redis的更多信息:据我所知,Redis使用的是最近使用最少的算法。我认为根据您为redis服务器设置的内存限制,它可能会丢弃项目。这台电脑有1GB的可用内存,但总是丢失数据。看起来很奇怪。要做的第一件事是找出您的代码是否有问题。b C驱动程序或C redis本身。你能用另一个C驱动程序重现这种行为吗?@FernandoJS电脑可能有1GB的可用内存,但你必须检查配置,看看Redis允许自己使用多少内存。
class ProdutoDTO {
public long Id { get; set; }
public string name { get; set; }
}