jjzjj

StackExchange

全部标签

c# - 如何使用 StackExchange redis 库在 C# 中执行 HMSET?

我正在尝试使用StackExchangeRedis库执行HMSET,但我不知道如何操作。我知道HSET和HMSET之间的区别并且我知道如何使用HSET那么为什么我不能使用HMSET?我在这里遗漏了什么吗? 最佳答案 通过查看testsforthesourcecode看起来它确实支持HMSET:vardata=newHashEntry[]{newHashEntry("foo",Encoding.UTF8.GetBytes("abc")),newHashEntry("bar",Encoding.UTF8.GetBytes("def"))

c# - 使用 StackExchange.Redis 时出现错误 'WRONGTYPE Operation against a key holding the wrong kind of value'

我使用以下代码通过StackExchange.Redis将数据推送到REDIS,有时在生产中出现错误“针对持有错误类型值的键的WRONGTYPE操作”。privatestaticIDatabaseRedisDB=null;privatestaticConnectionMultiplexerredisConnection=ConnectionMultiplexer.Connect($"IPAddress:port,allowAdmin=true,ConnectTimeout=30000,connectRetry=5,syncTimeout=30000,abortConnect=false

redis - 通过 StackExchange.Redis 在 Redis 中建立二级索引

使用Springdataredis@indexed我可以在Redis中设置索引。像这样定义我的域@RedisHash("customer")publicclassCustomerextendsSerializble{@IdPrivateStringCustomerId;@IndexedPrivateStringCustmerName;…}我正在尝试使用C#StackExchange.Redis来实现。成功能够创建哈希IDatabasedb=redis.GetDatabase(Variables.RedisDatabaseIndex);db.HashSet(Row.customerId,

asp.net - 如何将 StackExchange.Redis ConnectionMultiplexer 与 Azure ASPX 页面重用?

我有一个使用.aspx页面用VBS编写的azureweb应用程序。我需要这些页面来使用StackExchange.Redis访问我的Azure托管的Redis缓存。如何跨多个aspx页面共享和重用ConnectMultiplexer对象?当我在每个页面上创建它时它都可以工作,但是,每个页面请求都会占用另一个Redis连接,我很快就会用完我的Redis实例上的连接,然后IIS停止提供页面。 最佳答案 只需将其存储在某处即可。任何地方。一个静态变量就可以了,最坏的情况。应用程序状态(不是请求状态)是另一种选择。

c# - StackExchange.Redis在redis集群模式下有什么用

这是使用stackexchange.redisv1.1.603,.net4.6,控制台应用程序。这是我的代码:usingSystem;usingSystem.Collections.Generic;usingStackExchange.Redis;namespaceRedisClusterTesting{classProgram{staticvoidMain(string[]args){stringip="192.168.1.20:30001,192.168.1.20:30002,192.168.1.20:30003,resolvedns=1";varconf=Configuratio

c# - StackExchange.Redis 中的 MSET

有没有一种方法可以通过StackExchange.Redis在Redis中执行MSET。引用后documentation,下面我写的代码是执行StringSetAsync来在Redis中添加多个键值对。我们有类似IDatabase.StringSet(RedisKey[],RedisValue[])的东西吗?publicvoidAdd(IEnumerablecacheKeyValues){vartasks=newList();foreach(varkvincacheKeyValues.ToList()){tasks.Add(((Task)DB.StringSetAsync(kv.Key

c# - 在 StackExchange.Redis 中删除一个集合的所有键

请问有什么方法可以完全删除StackExchange.Redis库中的一个set吗?据我所知,Redis中有一个方法:Empty/deleteasetinRedis?谢谢 最佳答案 KeyDelete方法应该就是您正在寻找的方法。正如在repo中看到的那样注释表明它的功能与DEL相同 关于c#-在StackExchange.Redis中删除一个集合的所有键,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

c# - 如何通过 StackExchange.Redis 删除 redis 中的所有键值

我在C#程序中使用StackExchange.Redis。有什么方法可以清空redis或者删除所有键值对吗? 最佳答案 您可能正在寻找FLUSHDB/FLUSHALL.尽管名称如此,但这不是“数据库”级别的命令,而是“服务器”级别的命令(意思是:在redis集群的上下文中,它只影响一个服务器,而不是整个键空间;thisdistinctionisexplainedmorehere),因此它是从SE.Redis中的IServer访问的:ConnexctionMultiplexerredis=...varserver=redis.GetS

caching - Redis StackExchange 存储 500k 类

我试图用Redis代替现有的缓存系统,该系统主要由Dictionary组成.我有大约500k个对象并且正在使用MsgPackObjectSerializer。我在尝试检索整个数据集时遇到了性能问题。获取所有key需要几秒钟。varkeys=cacheClient.SearchKeys("ID:*").ToList();并以这种方式使用GetAll方法:cacheClient.GetAll(keys).Values;即使配置如下也会导致超时:varconfigOptions=newConfigurationOptions();configOptions.EndPoints.Add("lo

azure - stackexchange redis,读取大文件=超时

我有一个使用大内存文件(不到2gb)的应用程序。我正在尝试使用redis列表(在Azure中)作为存储(相对于SQL)。在redis中构建列表非常快,我可以在大约5分钟内加载redis列表,但随后我需要从列表中读取到应用程序中。这非常慢,我已经尝试增加线程数、延长synctimeout等无济于事。ThreadPool.SetMinThreads(200,200);我正在使用我在网上发现的redis列表的C#实现,我将其传递给通过foreach循环构建内存集合的代码。在内部这是它处理数据的方式(我省略了类(class)的其余部分)publicclassRedisList:IList{pr