标签: redis

Redis是单线程的,那么它是如何进行并发I/O的呢?

试图掌握Redis的一些基础知识我遇到了一篇有趣的博客文章.

作者说:

Redis是带有epoll/kqueue的单线程,并且在I/O并发方面无限缩放.

我肯定误解了整个线程,因为我发现这个说法令人费解.如果程序是单线程的,它如何同时执行任何操作?如果服务器是单线程的话,为什么Redis操作是原子的呢?

有人可以就这个问题说清楚吗?

multithreading redis

152
推荐指数
2
解决办法
6万
查看次数

Linux - 仅安装redis-cli

我有一台安装了Redis的Linux服务器,我想通过本地Linux机器的命令行连接它.

是否可以redis-cli只安装(没有redis-server和其他工具)?

如果我只是将redis-cli文件复制到本地计算机并运行它,我有以下错误:

./redis-cli: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by ./redis-cli)
Run Code Online (Sandbox Code Playgroud)

linux redis

152
推荐指数
12
解决办法
16万
查看次数

打印Redis中的键数

有没有办法在Redis中打印键数?

我知道

keys *
Run Code Online (Sandbox Code Playgroud)

但这似乎有点重. - 鉴于Redis是一个关键的价值商店,也许这是唯一的方法.但我仍然希望看到类似的东西

count keys *
Run Code Online (Sandbox Code Playgroud)

redis

141
推荐指数
9
解决办法
13万
查看次数

多个Redis数据库有什么意义?

所以,我来到一个地方,我想将我在redis中存储的数据分割成单独的数据库,因为我有时需要在一种特定类型的数据上使用keys命令,并希望将它分开以使其更快.

如果我分成多个数据库,一切仍然是单线程的,我仍然只能使用一个核心.如果我只是在同一个盒子上启动另一个Redis实例,我会使用额外的核心.最重要的是,我不能命名Redis数据库,或者给它们任何更多的逻辑标识符.所以,所有这些都说明了为什么/什么时候我想要使用多个Redis数据库,而不是仅为我想要的每个额外数据库启动一个额外的Redis实例?相关地,为什么Redis不会为我添加的每个额外数据库使用额外的核心?跨数据库进行单线程的优势是什么?

redis

139
推荐指数
6
解决办法
6万
查看次数

如何检查redis实例版本?

如何检查redis-instance版本?

我在Redis网站上找到了这个命令:

$ redis-server

这应该给我(根据网站):

[28550] 01 Aug 19:29:28 # Warning: no config file specified, using the default config. In order to specify a config file use 'redis-server /path/to/redis.conf'
[28550] 01 Aug 19:29:28 * Server started, Redis version 2.2.12
[28550] 01 Aug 19:29:28 * The server is now ready to accept connections on port 6379
... and so forth ...
Run Code Online (Sandbox Code Playgroud)

但我得到了这个:

[8719] 04 Feb 14:51:09.009 # Warning: no config file specified, using the default config. In order to …
Run Code Online (Sandbox Code Playgroud)

version redis

139
推荐指数
6
解决办法
13万
查看次数

如何清除卡住/陈旧的Resque工作人员?

从附图中可以看出,我有几个工人似乎被卡住了.这些过程不应超过几秒钟.

在此输入图像描述

我不确定为什么他们不会清除或如何手动删除它们.

我在Heroku上使用Resque with Redis-to-Go和HireFire来自动扩展工作人员.

ruby-on-rails heroku resque redis ruby-on-rails-3

131
推荐指数
6
解决办法
6万
查看次数

名称长度会影响Redis的性能吗?

例如,我喜欢在Redis中使用详细名称set-allBooksBelongToUser:$userId.

这样可以,还是会影响性能?

redis

122
推荐指数
3
解决办法
3万
查看次数

Redis连接到127.0.0.1:6379失败 - 连接ECONNREFUSED

我通过expressjs使用node.js
我尝试将帐户存储到会话中.所以,我尝试测试使用session中的代码与expressjs

var RedisStore = require('connect-redis')(express);
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.session({ secret: "keyboard cat", store: new RedisStore }));
Run Code Online (Sandbox Code Playgroud)

但我得到了错误Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED.
请帮我解决这个问题

javascript session redis node.js express

119
推荐指数
8
解决办法
16万
查看次数

Redis缓存直接使用内存

我还没有使用Redis,但我听说过它并计划将其作为缓存存储器进行尝试.

我听说Redis使用内存作为缓存存储数据库,那么如果我使用变量作为对象或字典数据类型来存储数据有什么区别呢?喜欢:

var cache = {
    key: {

    },
    key: {

    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

Redis有什么优势?

memory caching redis

117
推荐指数
2
解决办法
4万
查看次数

node.js数据库

我正在寻找一个与node.js应用程序配对的数据库.我假设一个json/nosql数据库比关系数据库更好[我可以不用任何json/sql阻抗不匹配].我在考虑:

  • CouchDB的
  • MongoDB的
  • Redis的

任何人都有任何观点/战争故事与node.js的上述兼容性/可部署性?任何明确的收藏?

couchdb mongodb redis node.js

115
推荐指数
6
解决办法
5万
查看次数