草庐IT

database_connection_management

全部标签

memory-management - 如何阻止所有写入并只允许在 Redis 服务器中读取?

我有一个用例,我需要限制used_memory_rss的使用,以确保redis在边界内很好地使用RAM。在Redis的RSS达到阈值的情况下,预计Redis不应接受任何新的数据库写入,而应接受数据库读取。我们怎样才能做到这一点?有人可以在这里提供一些见解吗? 最佳答案 可以设置maxmemory配置来设置内存使用限制,将maxmemory-policy配置设置为noeviction。通过上述配置,当内存使用量达到限制时,Redis将只接受读操作,写操作返回错误。 关于memory-man

node.js 和 redis : is a redis store accessible across node connections?

一个非常基本的问题,但我找不到任何地方的答案(可能是因为它太明显了):在node.js(即“redis”npm模块)中,redis存储是否像其他数据库一样可以跨node.js连接访问?假设我像这样设置我的node.js服务器varredis=require("redis"),client=redis.createClient();假设我有两个独立的连接:用户A和用户B。如果用户A有client.set("foo","bar",redis.print);和用户B(在不同的Node连接上)client.get("foo",function(err,reply){console.log(re

使用 connect-redis 和 Unix 域套接字的 Node.js Express session

我正在尝试通过connect-redis利用基于Redis的session存储,通过UNIX域套接字进行通信。有这个:RedisConnectionviasocketonNode.js但答案特定于node-redis,而不是用于Redissession存储的connect-redis。我认为通过创建我自己的node-redis对象并传入'client'参数可以很容易地让事情顺利进行,如“此处自述文件的选项部分:https://github.com/visionmedia/connect-redis但是,当我这样做时,req.session参数永远不会在Express应用程序上设置。va

javascript - redis sub/pub 进出 io.connect 回调

如果我想将数据发送给所有连接的人,是否应该将redis订阅事件放在io.connect回调之外?或者像这样将它放在io.connect中更好:io.on('connection',function(socket){sub.on('message',function(channel,msg){Project.findAll({where:{id:msg}},{raw:true}).success(function(d){console.log(d);io.sockets.emit("activities",d);})});});会有什么不同吗?Node.jsvarexpress=requ

c# - 如何在 Servicestack.Redis 中使用 "New Managed Pub/Sub Server"取消订阅 channel

在NewManagedPub/SubServer他们的文档展示了如何在pubsubserver的初始化中订阅channel。但是,您如何在程序稍后需要时取消订阅特定channel?我的代码:usingServiceStack.Redis;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Threading;namespaceva.communication{classProgram{staticvoidMain(string[]args){varclientsManager=newPoole

Linux(ubuntu、centos): kex_exchange_identification: Connection closed by remote host

一、连接服务器报错今天我在连接我的Ubuntu服务器的时候,发现连不上,报下面这个错误。net.schmizz.sshj.transport.TransportException:Serverclosedconnectionduringidentificationexchange进一步研究发现报错:kex_exchange_identification:Connectionclosedbyremotehost二、原因当你在尝试使用SSH连接到一个Ubuntu服务器时遇到"kex_exchange_identification:Connectionclosedbyremotehost"错误,这通

node.js - 错误 : Redis connection to 10. 130.212.246:6379 失败 - 连接 ETIMEDOUT

我有一个sails应用程序。我在AWS中运行该应用程序。当我在开发模式(sailslift--verbose)下运行代码时,它工作正常。我可以通过输入IP和端口号(xx.xx.xxx.xx:1337/)从浏览器访问它。但是当我在生产模式下运行代码时(sailslift--prod--verbose)当我尝试使用xx.xx.xxx.xx:1337时我无法通过ip(xx.xx.xxx.xx)访问它给我以下错误。Grunt::Done,withouterrors.UnabletoparseHTTPbody-erroroccurred:Error:Redisconnectionto10.130

c# - : could not connect to redis Instance at XX. XXX.XX.XXX:6379

您好,我正在尝试连接到在AWSEC2Linux服务器上监听端口6379的Redis服务器。container.Register(c=>newPooledRedisClientManager(new[]{"XX.XXX.XX.XXX:6379"}));我执行了以下步骤,创建了一个入站规则作为自定义TCP允许6379端口,并更改redis.conf绑定(bind)到XX.XXX.XX.XXX:6379或0.0.0.0但仍然无法连接到服务器,任何人都可以帮忙.这是我在AWS上的入站规则CustomTCPRuleTCP63790.0.0.0/0 最佳答案

database - 确定大型 redis 数据库中未使用键的百分比

我有一个Redis数据库,里面有数百万个键。随着时间的推移,我写入和读取的key发生了变化,因此有许多key我不再使用了。大多数也没有任何类型的TTL。我想了解Redis数据库中有多少百分比的键不再使用。我在想我可以使用hyperloglog来估计正在写入的键数的基数,但是为每个被写入和读取的键做一个PFADD似乎需要很多工作从。明确地说,我还不想删除任何东西,我只是想对数据库中使用的键数做一些分析。 最佳答案 我将从scan命令开始遍历键,然后在每个键上使用objectidletime命令来收集自上次使用键以来的秒数用过的。从那里

database - 通过命令行在redis中创建命名空间

我正在使用Ubuntu并且我有REDIS数据库,我想在REDIS中创建命名空间或数据库,但我找不到任何命令。 最佳答案 Redis默认自带16个数据库。您可以使用select命令选择其中任何一个。选择0,如果你想拥有更多,你可以在redis.conf文件中更改它。在GENERAL部分下,将databases的值设置为您想要的数字。然后你需要用配置文件启动你的redis服务器,即redis-serverredis.conf 关于database-通过命令行在redis中创建命名空间,我们在