草庐IT

pub-cache

全部标签

caching - 将 Hazelcast/Redis 隐藏在 REST Controller 后面是否有点矫枉过正

我们正在使用内存数据存储,可能是Hazecast或Redis(技术尚未确定)内存数据存储主要用作缓存提供程序,但也用作运行某些分析的计算平台。Hazelcast/Redis提供了自己的本地客户端,允许对网格内容进行细粒度操作。将hazelcast/redis实例包装在Jetty中并公开一个rest接口(interface)并且不为客户端应用程序提供对Hazelcast/Redis的直接访问是否有点矫枉过正?例如,RESTController的职责是检索条目、应用过滤器并在缓存未命中时从数据库中检索条目。向应用程序公开的功能将是只读的+一些涉及多个键的作业(分析)。所以基本上客户端应用程

node.js - 使用 Redis Pub/Sub 的 Socket IO 服务器集群

首先,我构建了一个微服务来获取FootballAPI,并通过redis的pub/sub系统,如果有任何实时比分变化,它会发布任何变化。现在我的服务器,带有套接字和路由,将处于集群模式。我已经用socketio-redis设置好了。这是此设置的一个片段:constio=require('socket.io')();constsRedis=require('socket.io-redis');constadapter=sRedis({host:'localhost',port:6379});const{promisify}=require('util');constRedis=requir

caching - 在这些缓存场景中,代码在哪里执行?

我正在阅读有关缓存策略的内容,例如缓存端、直写、回写……在直写和回写的特定情况下,暗示缓存本身负责分别写入数据库和事件队列(有关完整上下文,这里是文章-https://github.com/donnemartin/system-design-primer#when-to-update-the-cache)例如write-through图示为申请代码:set_user(12345,{"foo":"bar"})缓存代码:defset_user(user_id,values):user=db.query("UPDATEUsersWHEREid={0}",user_id,values)cach

redis - celery + 2个redis : broker and cache

我有:1)标准端口上的redis-这是缓存2)端口53333上的redis-这是一个代理为什么celery获取任务成功,却没有返回到53333端口?我可以通过标准端口上的redis-cli看到这个任务。你能帮我更正“celeryconfig.py”吗? 最佳答案 很抱歉给您带来麻烦...按照插入到“celeryconfig.py”的字符串:CELERY_RESULT_BACKEND="redis"CELERY_REDIS_HOST="localhost"CELERY_REDIS_PORT=56379...以及所有工作。

ruby-on-rails - 使用 Redis pub/sub 创建太多线程

我有一个Rails前端服务器,它接收来自用户的多个请求,然后将这些请求发送到后端服务器。后端服务器异步处理请求,并在完成每个请求后通知前端服务器。我使用Redispub/sub在这两个服务器之间进行通信。特别是,对于来自用户的每个请求,我都会创建一个新的Redis实例来订阅单个channel(例如,scoring_channel)。但是,如果我有100个用户同时发出请求,则每个Redis订阅者将持有一个线程。这会影响我的服务器性能吗?如果我对最大线程数有限制(例如,Heroku允许最多256个线程),我应该如何避免这个问题? 最佳答案

caching - 使用 Redis 和 Service Stack for Piranha 编写缓存提供程序 - 跟踪缓存的对象类型

我正在编写一个缓存提供程序来缓存任何类型的对象。问题是当我从缓存中读取值时转换为正确的类型。using(varredisClient=redisClientsManager.GetClient()){redisClient.Set(key,value,newTimeSpan(1,0,0));}因此,很容易将对象放入缓存中,并在缓存中将其转换为字符串。当我把它从缓存中拉出来时,它变得有趣了using(varredisClient=redisClientsManager.GetClient()){returnredisClient.Get(key);}这是行不通的,因为我们没有合适的类型来

caching - redis最大数据库数

在Redis中,选择“数字”可以访问该索引处的特定数据库。我的redis配置设置为16(为什么?)。我们需要高度扩展我们的应用程序,那么它的最大限制是多少? 最佳答案 Redis数据库的默认数量为16,但可以配置为更多。由于该默认值,您的配置中可能有16个(请参阅StoringDatawithRedis)。数据库(在Redis中)是一种逻辑分区数据的方法(想想“命名空间”、“键空间”,或者用RDBMS术语来说,模式)。Redis数据库与可伸缩性无关,​​因此您的“最大限制”问题脱离了上下文。要扩展,您需要按照Sergio在他的评论中

caching - redis和datacache的区别?

Bluemix提供DataCache和Redis,它们都提供键/值存储。两者有什么区别,典型用例是什么?我正在尝试决定使用哪一个。 最佳答案 采访了两者的一些用户:DataCache是内存中的数据网格,而Redis是内存中的数据基。网格没有持久化功能,你必须自己编码。这是更多的工作,但也更灵活。DataCache过期设置为整个集合,而Redis是逐个键过期。Redis是BSDlicensedOpenSource,而DataCache建立在IBM专有的WebsphereExtremeScale架构之上。在旁观者的眼中,您更喜欢什么。

ruby - 如何为 Redis-As-Rails-Cache(使用 Redis 作为 rails 缓存)Rails 4.1 实现连接池?

如何将连接池添加到我的Redis设置中?出于某种原因,我似乎无法找到关于此的任何信息。我正在使用像这样设置的redis(3.2.0):(你可以假设resque_uri和cache_uri已经在这个c之前被解析)请求:$REDIS_BACKGROUND_JOB=Redis.new(:host=>resque_uri.host,:port=>resque_uri.port,:password=>resque_uri.password)在初始化序列的后面,我们做Resque.redis=$REDIS_BACKGROUND_JOB我们有第二个Redis实例,具有不同的内存、连接限制和逐出策略,

java - 消息持久化 - Redis pub/sub

在channel上发布的消息会被另一端的订阅者接收。但是,如果没有找到活跃的订阅者,消息就会丢失。这是我的问题,是否可以修改Redis以在订阅者不活跃时支持消息持久化? 最佳答案 不,没有-消息在发布时发送给所有订阅者(如果有的话),并且不可持久。 关于java-消息持久化-Redispub/sub,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/43201603/