首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Appharbor上的Redis - Booksleeve GetString异常

Appharbor上的Redis - Booksleeve GetString异常
EN

Stack Overflow用户
提问于 2012-04-27 15:16:37
回答 1查看 466关注 0票数 1

我正在尝试在appharbor上设置Redis。我已经按照他们的指示进行了操作,我再次遇到了Booksleeve API的问题。下面是我最初用来让它工作的代码:

代码语言:javascript
复制
               var connectionUri = new Uri(url);

                using (var redis = new RedisConnection(connectionUri.Host, connectionUri.Port, password: connectionUri.UserInfo.Split(new[] { ':' }, 2)[1]))
                {
                    redis.Strings.Set(1, "greeting", "welcome to remember your stuff!");

                    try
                    {
                        var task = redis.Strings.GetString(1, "greeting");

                        redis.Wait(task);

                        ViewBag.Message = task.Result;
                    }
                    catch (Exception)
                    {
                        // It throws an exception trying to wait for the task?
                    }
                }

然而,问题是它正确地设置了字符串,但是当尝试从键值存储中检索相同的字符串时,它会抛出一个超时异常,等待任务执行。然而,这段代码在我的本地redis服务器连接上工作。

我使用API的方式有误吗?还是说这跟Appharbor有关?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-27 15:23:04

SqlConnection类似,您需要调用Open() (否则您的消息将排队等待传递)。

SqlConnection不同,您不应该在每次需要时 RedisConnection -它的目的是用作共享的、线程安全的多路复用器-即单个连接被保存在某个地方,并由大量无关的调用者使用。当然,除非你只需要做一件事!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10346350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档