首页 文章
  • 63 votes
     answers
     views

    Node.js,Socket.io,Redis pub / sub高容量,低延迟的困难

    当连接socket.io/node.js和redis pub / sub以尝试创建由可处理多个传输的服务器事件驱动的实时Web广播系统时,似乎有三种方法: 'createClient' redis连接并订阅 Channels . 在socket.io客户端连接上,将客户端加入socket.io Session 室 . 在redis.on("message",...)事件中...
  • 2 votes
     answers
     views

    使用socket.io-redis保持聊天记录

    我与socket.io和redis聊天作为商店 . 我的问题是,我如何从套接字室检索所有发射?聊天工作正常,只是刷新所有丢失的邮件 . 以下是我管理redis商店的方式 . var redis = require('redis').createClient; var adapter = require('socket.io-redis'); var pub = redis(port, host, ...
  • 0 votes
     answers
     views

    socket.io-redis如何在场景后面工作?

    我打算在redis上存储消息(聊天消息),我偶然发现了socket.io人创建的库socket.io-redis . 我只是想知道如果我使用这个库它将对我当前的socket.io实例做什么? 它会自动保存场景背后的所有消息吗? 例如,我需要通过使用 socket.io-redis 在socket.io上实现redis的唯一代码 var redis = require('socket.io-redi...
  • 2 votes
     answers
     views

    在ServiceStack中使用RedisClient的Eval / Lua操作?

    我有一个实体 公共课书{public long Id {get;组; public string BookName {get;组; } public int ISBN {get;组; public string作者{get;组; }} 我想在非关键字段的基础上过滤记录作者: select from from Book where Author ='Jones' 我不想通过“GetAll”函数获...
  • 0 votes
     answers
     views

    如何使用kong api网关的redis

    我们使用kong api网关作为所有api的单一网关 . 我们的api(1500-2000毫秒)很少遇到延迟问题 . 后来当我们检查时,由于“速率限制”插件,正在创建延迟 . 当我们禁用插件时,延迟会改善,响应与我们直接从IP获得的响应相同(接近300毫秒) . 我试图设置redis节点来缓存数据库查询,我不知道如何配置kong来读取redis本身 . 我们如何将数据库查询缓存到redis节点 ....
  • 3 votes
     answers
     views

    如何使用微服务架构处理共享数据源

    我的微服务架构中有几个服务 . 两个服务(服务A,服务B)有不同的api,并提供不同的域逻辑 . 但是他们确实共享一些应该返回的逻辑 - 来自Redis的用户状态 . 当用户状态改变时,Iam从第三个服务发布到我的所有微服务 解决方案: 我可以创建另一个负责“用户状态”的服务,并将在Redis上保存所有用户数据 . 缺点:我的客户将对每个api请求进行额外调用(以获取用户状态) . 为...
  • 0 votes
     answers
     views

    无法在tomcat上使用redis部署spring boot

    我正在使用带有redis的spring boot和spring security . 如果我使用embedd tomcat在eclipse中运行spring boot app,那没关系 . 但是当在tomcat上运行war文件时,得到错误: java.lang.NoSuchMethodError:org.springframework.data.redis.core.RedisOperation...
  • 0 votes
     answers
     views

    Spring启动项目上的Redis连接

    我添加了Redis的配置类 @Bean public RedisTemplate<String, Object> redisTemplate() { RedisTemplate<String, Object> template = new RedisTemplate<>(); template.setConnectionFactory(jedis...
  • 226 votes
     answers
     views

    Redis字符串与Redis哈希表示JSON:效率?

    我想将JSON有效负载存储到redis中 . 我有两种方法可以做到这一点: 使用简单的字符串键和值 .key:user,value:payload(整个JSON blob,可以是100-200 KB) SET user:1 payload 使用哈希 HSET user:1 username "someone" HSET user:1 location "NY&...
  • 3 votes
     answers
     views

    Redis群集主从 - 无法添加密钥

    我已经设置了Redis主从配置,其中一个主机(6379端口)和3个从机(6380,6381,6382)在同一台机器上运行 . 看起来群集已正确设置,因为我可以在运行info命令时看到以下输出: # Replication role:master connected_slaves:3 slave0:ip=127.0.0.1,port=6380,state=online,offset=29,lag=1...
  • 1 votes
     answers
     views

    如何使用ServiceStack客户端连接Redis群集(不带Sentinel)

    我设置了Redis Cluster(版本3.2.0)(不是Sentinel),其中4个Master(每个都有一个Slave)和一个虚拟IP随机点到4个主服务器之一,IP: VIP:10.0.0.10:6379(连接M1,M2,M3,M4) M1:10.0.0.1:6379-S1:10.0.0.5:6378 M2:10.0.0.2:6379-S2:10.0.0.6:6378 M3:10.0.0.3...
  • 3 votes
     answers
     views

    Redisson捕获关键过期事件

    我在我的大数据应用程序中使用Redis作为缓存服务 . Redis的主要目的是验证我们从每个请求中收到的密钥 . 我们使用RMap存储密钥和值对,其示例如下, key = 1212sads23sads341212saas23asds45 value = Regular java object with some complex data. 我想为我插入的每个键分配TTL,我知道我可以使用 RM...
  • 0 votes
     answers
     views

    已过期的Redisson Keys仍可在Redis Cli中看到

    我刚刚了解了Redis和Redisson . 基本上我正在尝试使用Redis存储用于我的应用程序授权的AcessTokens / RefreshTokens . 所以我想存储具有到期时间的令牌 . 我使用 Spring Data Redis 来存储令牌,但没有Api使Map中的每个条目到期 . 我遇到了这个帖子Spring Data Redis Expire Key,因此查找了Redisson ....
  • 1 votes
     answers
     views

    Airflow Celery和Redis作业处于等待状态

    我正在尝试使用带有redis作为经纪人的芹菜来运行气流,但是工作正在陷入等待状态 . Airflow在本地运行,我使用示例DAG进行测试 . executor = CeleryExecutor sql_alchemy_conn = mysql://root@localhost/airflow sql_alchemy_pool_size = 5 [celery] # This sec...
  • 1 votes
     answers
     views

    Spark-submit作业在redis.clients.jedis.JedisPoolConfig.setFairness(Z)V中抛出NoSuchMethodError

    我的火花流工作(火花1.6)试图在Redis集群中存储数据,当我在本地运行它工作正常时,当它在集群上部署时,我得到了下面的堆栈跟踪: Caused by: java.lang.NoSuchMethodError: redis.clients.jedis.JedisPoolConfig.setFairness(Z)V at com.xyz.utils.redis.RedisClien...
  • 2 votes
     answers
     views

    使用ttl将值设置为键

    是否可以在redis中使用单个命令中的值和ttl setnx键 我试图在redis中实现锁定,http://redis.io/commands/hsetnx似乎是最好的方法 . 它是原子的,如果一个键已经存在则返回0 . 是否可以使用TTL进行HSETNX 例如 HSETNX myhash mykey "myvalue" 10 #and key expires after 1...
  • 12 votes
     answers
     views

    如何使用Redis创建分布式锁?

    在redis文档中,我发现可以通过SETNX实现原始锁: http://redis.io/commands/setnx C4发送SETNX lock.foo以获取锁定崩溃的客户端C3仍然保留它,因此Redis将回复0到C4 . C4发送GET lock.foo以检查锁是否过期 . 如果不是,它会睡一段时间并从头开始重试 . 相反,如果锁定已到期,因为lock.foo上的Unix时间早于当前的U...
  • 3 votes
     answers
     views

    使用ServiceStack Redis进行分布式锁定的互斥锁违规

    我正在尝试使用ServiceStack-Redis库和described here提供的锁定机制来实现DLM,但我发现API似乎存在竞争条件,有时会向多个客户端授予相同的锁 . BasicRedisClientManager mgr = new BasicRedisClientManager(redisConnStr); using(var client = mgr.GetClient()) {...
  • 4 votes
     answers
     views

    使用StackExchange.Redis安全地设置密钥,同时允许删除

    我正在尝试使用Redis作为位于SQL数据库前面的缓存 . 在高层次,我想实现这些操作: 从Redis读取值,如果's not there then generate the value via querying SQL, and push it in to Redis so we don' t必须再次计算 . 将值写入Redis,因为我们只是对SQL数据库进行了一些更改,我们知道我们可能...
  • 2 votes
     answers
     views

    stackexchange redis hashscan可以一次返回所有字段

    我在C#中使用stackexchange.redis SDK,并希望扫描我的哈希集 . 我期望SDK作为redis客户端执行(当我执行“hscan myKey 0”时,它将返回几个键值对,以及一个我将用于下一次扫描的游标) . 但是,当我使用stackexchange.redis SDK实现“hashscan”方法时,如下所示: redisCache.HashScan(myKey, pageSiz...
  • 2 votes
     answers
     views

    使用Redlocks获取Azure Redis缓存上的锁定

    我有一个Azure Redis缓存,多个客户端正在使用它 . 缓存中的共享资源(密钥)很少需要互斥 . 我正在使用建议here的redlock算法 . 我的要求是每个客户端都需要以互斥的方式访问共享资源 . 如果客户端无法获取资源上的锁定,那么它应该以30秒的间隔继续尝试获取锁定,直到获取它为止 . 为防止死锁,如果进程崩溃,锁定应在5分钟后过期 . 我已经从github检查了redock.net...
  • 0 votes
     answers
     views

    redigo连接池 - 为什么在删除过时连接时释放锁定

    Redigo是redis数据库的golang客户端 . 它使用struct Pool 来维护连接池 . 此结构为应用程序放置和获取并行连接保存了一个互斥锁 . type Pool struct { // ... IdleTimeout time.Duration mu sync.Mutex // Stack of idleConn with most re...
  • 0 votes
     answers
     views

    redis抛出超时错误

    我的服务器在几小时前开始抛出以下异常,原因不明 . 这是一个Web应用程序 . 有人可以帮忙吗?我能做什么? ,超时执行GET SomeKey,inst:1,mgr:ProcessReadQueue,错误:从不,队列:12,qu:0,qs:12,qc:0,wr:0,wq:0,in:1702,ar:1 ,clientName:SSD41ACCU10147,IOCP :( Busy = 0,Free...
  • 1 votes
     answers
     views

    带有EX和NX的Ruby REDIS

    我试图在我们的rails应用程序服务器中实现锁定 . 如果我想永远获得一个锁,REDIS.setnx工作正常 . 但我希望获得有效期限的锁定,基本上我希望锁定在一定时间后过期,以便锁定可以再次获得 . 从REDIS的设置文档中,我发现它是可能的 . https://redis.io/commands/set "The command SET resource-name anystrin...
  • 13 votes
     answers
     views

    StackExchange.Redis超时

    生产环境 环境在Azure上,使用 Redis Cache Standard 2.5GB . Example 1 System.Web.HttpUnhandledException(0x80004005):抛出了类型'System.Web.HttpUnhandledException'的异常 . ---> StackExchange.Redis.RedisTimeoutExceptio...
  • 0 votes
     answers
     views

    使用带有redis的节点和套接字将数据从c#app推送到Web界面

    我正在尝试开发我的第一个节点应用程序..那就是说我有一个C#应用程序通过POST将一个用户特定的json数据提交到一个url让我们称之为 //localhost/data/send ,这个数据将每隔~1-5秒发送一次(还没决定) . 然后,我将有一个网站,要求用户登录,然后轮询该用户数据并显示它 . 我现在不是每隔x秒刷新一次页面,而是认为我可以使用某种套接字或基于事件的技术,如socket.i...
  • 12 votes
     answers
     views

    如何在socket.io中检查socket是否存在(连接)多个节点和socket.io-redis

    我使用socket.io与多个节点,socket.io-redis和nginx . 我按照本指南:http://socket.io/docs/using-multiple-nodes/ 我正在尝试:在一个函数(服务器站点),我想通过socketid查询此套接字已连接或断开连接 我试过 io.of('namespace').connected[socketid] ,它只适用于当前进程(这意味着它只能...
  • 9 votes
     answers
     views

    使用Redis Cloud和Heroku正确配置节点会话存储

    目前还不清楚在使用Redis Cloud和Heroku的情况下使用的正确配置参数是什么,并且无法在线找到正常运行的示例 . 这是我目前的代码: const express = require('express') const session = require('express-session') const RedisStore = require('connect-redis')(sessio...
  • 2 votes
     answers
     views

    Spring会话使用Redis并发问题

    我有一个使用Spring Session和Redis的web服务 . 当我调用每个Web服务操作时,会话对象从redis实现,并且当操作完成时,此对象将保存到redis服务器 . 当我想要更改会话的值并且同一会话同时运行多个操作时,会出现问题 . 如果更改会话的操作不是最新完成,则执行更改将丢失(每个操作都会保存自己的会话) . 是否可以避免此问题向webservice指示只能保存会话对象的一些特...
  • 1 votes
     answers
     views

    将Monolith ASP.NET Webform应用程序移动到微服务和会话管理

    我们正在努力将我们的整体ASP.NET Webform应用程序移动到微服务,首先,我们使用Nginx作为代理路由器,Node express作为API网关 . 从浏览器,任何.aspx请求将从Nginx路由到现有的ASP.NET Webform应用程序,新的调用将路由到API Gateway Till路由它的所有工作正常但问题是会话管理,ASP.NET Webform应用程序正在使用Redis a...

热门问题