Tag: redis

如何保持Redis服务器运行

我在nodejs应用程序中使用redis进行会话支持。 我已经安装了Redis服务器,它运行时,我运行Redis的服务器,但是当我closuresterminal的Redis停止,并不起作用。 如何让redis服务器永久运行?

复杂的数据结构Redis

比方说,我有散列的散列,例如 $data = { 'harry' : { 'age' : 25, 'weight' : 75, }, 'sally' : { 'age' : 25, 'weight' : 75, } } 存储这样一个数据结构的“常规”方式是什么(或者你不会?) 你会直接得到一个价值吗(例如:哈利:年龄? 一旦存储,你可以直接改变一个子键的值(例如sally:weight = 100)

雷迪斯哨兵vs集群

我知道redis sentinel是在多个redis实例中configurationHA(高可用性)的一种方式。 正如我所看到的,在任何时候都有一个redis实例主动提供客户端请求。 还有两台服务器处于待机状态(等待发生故障,因此其中一台服务器可以再次启动)。 浪费资源吗? 有没有更好的方式来充分利用可用的资源? Redis集群是Redis sentinel的替代scheme吗? 我已经查阅了redis文档来定位和聚类 ,请有经验的人解释一下。 UPDATE 好。 在我真正的部署场景中,我有两台专用于redis的服务器。 我有另一台服务器我的Jboss服务器正在运行。 运行在Jboss中的应用程序被configuration为连接到Redis主服务器(M)。 故障切换情况 理想情况下,我认为当主caching服务器失败(Redis进程停机或机器故障)时,Jboss中的应用程序需要连接到从caching服务器。 我将如何configurationRedis服务器来实现这一目标? +——–+ +——–+ | Master |———| Slave | | | | | +——–+ +——–+ Configuration: quorum = 1

何时使用Redis而不是MySQL来执行PHP应用程序?

我一直在看Redis。 它看起来很有趣。 但是从实际的angular度来看,在什么情况下使用Redis来处理MySQL会更好?

您可以连接Amazon以外的Amazon Elasticache Redis吗?

我可以从EC2实例连接到VPC中的Elasticache Redis实例,但我想知道是否有方法可以连接到Amazon EC2实例之外的Elasticache Redis节点,例如从本地开发者设置或其他供应商提供的VPS实例。 目前,当从我的本地设置尝试:redis-cli -h my-node-endpoint -p 6379 过了一段时间,我才得到暂停。 谢谢,

Redis设置vs散列

在许多Redis教程中(比如这个 ),数据存储在一个集合中,但是多个值组合在一起形成一个string(例如,一个用户帐户可能被存储在集合中作为两个条目“user:1000:username” “用户:1000:密码”)。 不过,Redis也有哈希。 似乎有一个“用户:1000”哈希,其中包含一个“用户名”条目和一个“密码”条目更有意义。 而不是连接string来访问一个特定的值,你可以直接在哈希中访问它们。 那为什么不用它呢? 这些只是老的教程? 还是Redis哈希有性能问题?

如何通过redis-cli显示所有密钥?

我正在使用redis作为djangocaching的内存数据库后端。 特别是我用django-redisconfiguration如下: CACHES = { 'default': { 'BACKEND': 'redis_cache.cache.RedisCache', 'KEY_PREFIX': DOMAIN_NAME, 'LOCATION': 'unix:/tmp/redis_6379.sock:1', 'OPTIONS': { 'PICKLE_VERSION': -1, # default 'PARSER_CLASS': 'redis.connection.HiredisParser', 'CLIENT_CLASS': 'redis_cache.client.DefaultClient', }, }, } 我的Djangocaching似乎正常工作。 奇怪的是我无法使用redis-cli命令行查看djangocaching键。 请注意在下面,我尝试了两个 $ redis-cli 和 $ redis-cli -s /tmp/redis_6379.sock [EndEdit中] 没有区别。 特别是使用KEYS *命令: $ redis-cli redis 127.0.0.1:6379> keys * (empty list or set) 但 redis 127.0.0.1:6379> set stefano […]

删除Redis列表中的所有条目

假设你在Redis中有一个LIST数据types。 你如何删除所有的条目? 我已经尝试过了 LTRIM key 0 0 LTRIM key -1 0 这两者都留下了第一个元素。 这将留下所有的元素: LTRIM key 0 -1 我没有看到一个单独的命令来完全清空一个列表。

Redis密钥中冒号的目的是什么?

我正在学习如何将Redis用于我的项目。 有一件事,我没有得到我的头是什么冒号密钥用于名称。 我已经看到这些关键的名字: users:bob color:blue item:bag 冒号是否将密钥分成不同的类别,并使密钥更快find? 如果是这样,你可以使用多个冒号命名键将其分成子类别? 最后,他们与在Redis服务器中定义不同的数据库有什么关系? 我已经通过文档阅读,并做了大量的谷歌search这个问题,但奇怪的是我找不到任何讨论这个问题。

打开redis端口进行远程连接

我可以在服务器上ping乒乓redis # redis-cli ping PONG 但远程有问题: $ src/redis-cli -h REMOTE.IP ping Could not connect to Redis at REMOTE.IP:6379: Connection refused 在configuration我得到了标准端口: # Accept connections on the specified port, default is 6379. # If port 0 is specified Redis will not listen on a TCP socket. port 6379 那么也许我应该在远程Ubuntu机器上打开端口6379? 怎么做?