草庐IT

pub-cache

全部标签

php - 在 PHP +Redis +Pub/Sub +WebSockets (+NodeJS) 中实时聊天

我想开发与channel的实时聊天,这些是我的需求:PHPbackendtomanagesiteRedisassessionanddataprimarystoragePub/Subtosendmessagesonlytochannel'sinterestedusersoneWebSocketconnectionwithwhichthemessageswillbesendandreceived.(optional)NodeJStousegreatnpmpackagesliketimesyncorsocket.io我看到了两种不同的架构来实现这一点:使用Socket.io使用Crossba

caching - 超时执行 SET {Key}, inst : 0, mgr : Inactive, queue : 2, qu=1, qs=1, qc=0, wr=1/1, in=0/0

我正在尝试使用StackExchange.Redis客户端将一个90KB的pdf文件保存到AzureRedis缓存中。我已将该文件转换为字节数组并尝试使用stringSet方法保存它并收到错误。代码:byte[]bytes=File.ReadAllBytes("ABC.pdf");cache.StringSet(info.Name,bytes);-->此行抛出异常“执行SET{Key}超时,inst:0,mgr:Inactive,queue:2,qu=1,qs=1,qc=0,wr=1/1,in=0/0".请帮忙。 最佳答案 执行SE

caching - 相当于 Memcached 中的 Redis 哈希?

我正在为我们的应用程序制定缓存策略,它同时使用Redis和Memcached。我们生成相当长的缓存数据JSON字符串,从我们的SQL数据库计算得出。由于缓存的数据是一次性的,我想使用Memcached,这样它会逐出我们不再需要的键。问题是可以从不同的参数访问一个集合(例如,用户)。在Redis中,我会使用哈希,因此我可以访问该哈希中的键(hget)以获取集合的每个表示,并且仍然能够使用一个命令(del)。但是,我找不到像Memcached那样将旧key逐出到给定DB大小的方法。所以我的问题是:如何设置Redis以使其保持最大数据库大小并根据需要逐出键?或者如何在Memcached中对R

redis - REDIS Pub/Sub 是否适合中等大小的二进制数据?

我有计划通过REDISPub/Sub发送给工作人员的工作.作业涉及处理图像(JPEG,20KB-800KB,通常约为150KB)。将图像直接作为消息的负载发送是个好主意吗? 最佳答案 我根本不认为这是一个问题。如果您确信您的订户/工作人员将能够跟上并且您不会冒用完RAM的风险,那么我认为这是一种有效的方法。我不知道它是否比建议的nginx流更好,但作为内存中数据存储,redis的扩展应该非常接近硬件和网络限制。请记住,redispub/sub不是“持久的”,因此如果将图像发布到当前没有人订阅的channel,则它不会被接收。图片将无

redis - Redis 和 Faye 中的分层 Pub/Sub 和推送通知

我一直在为我正在构建的系统使用Redis和Faye。我仍然不确定它们是否是我特定应用的最佳选择。我的目标每个用户都可以向channel/主题发布消息,并从他订阅的主题接收消息。主题必须具有层次结构(即主题“B”是主题“A”的子主题,因此主题之间存在“A->B”关系)。如果用户订阅了一个子主题,他只会收到来自该主题的消息(他订阅了“A->B”中的“B”,并且只会收到“B”中的消息)。如果用户订阅主主题,他会收到子主题的所有消息(他订阅了“A”并收到“B”和“A”的其他子主题的消息)。用户应该使用推送通知(Android/Apple)在他们的移动设备上接收通知。我尝试做什么我试图通过向层次

javascript - Socket.io 和 Redis Pub/Sub 不工作

大家好,我想弄清楚我的代码中有什么错误,我的代码是关于socket.io和redispub/sub的,这是我第一次尝试这个,我希望你们能帮助我。这是我的index.htmlvarsocket=newio.Socket();socket.connect();socket.on('connection',function(socket){console.log('Connected');});socket.on('disconnect',function(socket){console.log('Disconnected');});TestPage这是我的app.jsvarredis=re

caching - WebApi - Redis 缓存与输出缓存

我一直在研究Redis(完全没有经验-只是学习理论),并且在做了一些研究之后,发现它也被用作缓存。例如StackOverfollow本身。我的问题是,如果我有一个asp.netWebApi服务,并且我在WebApi级别使用输出缓存来缓存响应,我基本上是在服务器内存中存储某种键/值(请求/响应)以提供缓存回复。现在由于redis是一个内存数据库,它如何帮助我用redis缓存替代WebApi的输出缓存?有什么好处吗?我试图通过这个答案redis-cache-vs-using-memory-directyly,但我想我没有得到答案中的关键行:“基本上,如果您需要您的应用程序在共享相同数据的多

caching - ArangoDb 作为 redis 的缓存服务器替代品

我打算使用arangodb作为我的后端存储。我想知道与aerospike和redis相比,arangodb作为缓存服务的效率如何。有没有人尝试过作为缓存系统在功能和性能方面的比较。它将帮助我减少使用后端堆栈中的其他系统管理。 最佳答案 据我所知,ArangoDB不提供与Redis相同的面向缓存的功能(我想到key过期,使用类似EXPIRE或EXPIREAT的命令)。所以你必须处理过期和过期key的驱逐,ArangoDB不会为你做这件事。此外,ArangoDB主要将其数据存储在磁盘上,而Redis将所有数据存储在内存中,也可以选择存储

redis - 请解释 Redis Pub/Sub 有线协议(protocol)示例

在此RedisPub/Sub话题它是这样说的:“订阅:表示我们成功订阅了作为回复中第二个元素给出的channel。第三个参数表示我们当前订阅的channel数。”然后它给出了这个有线协议(protocol)示例:SUBSCRIBEfirstsecond*3$9subscribe$5first:1*3$9subscribe$6second:2*3和$9这样的行是什么意思? 最佳答案 *3表示服务器响应中有3个参数。$9表示第一个参数是一个包含九个字符的字符串,字符串本身将跟在下一行(“订阅”)之后。$5和“first”也是如此。:1表

Redis Pub/Sub 有用吗?

我有一个问题一直困扰着我。Redis的pub/sub特性到底是用来做什么的?我只能想到通过TCP(本地或分布式)的进程间通信,但除此之外别无他法。谁能证明我错了。 最佳答案 这是一种插入事件流的简单方法,通常是在进程或机器之间。例如,用户创建了一个已发布的事件。一个进程处理根据事件更新数据库,另一个更新用户统计信息,另一个更新全局统计信息,另一个更新文本搜索数据库,等等。它们都是通过订阅channel松散耦合的。您可以添加新进程来测试更新和监控系统。它与消息队列略有不同,因为在消息被处理之前不会存储消息,但Redis具有用于此类作业