草庐IT

django - 使用 celery 异步执行 Django 应用程序的任务

在我维护的Django应用程序中,用户登录并相互交换消息,论坛风格。在任何给定的时间点,我通过检查在过去5分钟内登录了session对象的人来显示谁在线。为此,我使用了Django插件user_sessions,这允许像常规ORM一样操作session。我实现这个的代码是这样的:classWhoseOnlineView(ListView):model=Sessiontemplate_name="whose_online.html"defget_queryset(self):unique_user_sessions=Session.objects.filter(last_activity

ruby-on-rails - 在 sidekiq 中标记作业以便将来快速搜索和删除

我有一个用例,当将来用户发生某些事件时,我想清除一些sidekiq作业。一种方法是将job_id存储在某个地方(比如redis),然后使用它搜索和删除作业。Sidekiq::ScheduledSet.new.find_job([job_id]).delete但是我必须将它存储在redis中,并在队列中的所有作业中线性搜索。另一种方法是在worker中添加一个额外的参数。然后使用它进行搜索并删除。Sidekiq::ScheduledSet.new.find{|j|j.queue=='my_queue'&&j.args[0]=="my_tag_user_id"}.map(&:delete)

python - flask 应用程序的 redis 数据库

我正在尝试修改现有的Flask应用程序以使用Redis数据库而不是token。我搜索了一个示例并通过了redis文档,但找不到任何东西。这是我所拥有的:fromflaskimportFlask,Responsefromflask.ext.loginimportLoginManager,UserMixin,login_requiredfromredisimportRedisredis=Redis()app=Flask(__name__)login_manager=LoginManager()login_manager.init_app(app)classUser(UserMixin):#

node.js - 注册和 req.user.roles 后 SEAN.js 自动登录

我目前使用sean.js在一个项目上。一切看起来都不错,但我对注册过程有疑问。我最近在我的路由上实现了后端策略,以根据用户的角色向他们授予权限,如下所示:exports.invokeRolesPolicies=function(){acl.allow([{roles:['myRole'],allows:[{resources:'/some-route',permissions:'*'}]}]);};exports.isAllowed=function(req,res,next){varroles=(req.user)?req.user.roles:['guest'];//Ifanper

redis - 如何在避免竞争条件的同时实现相当于 "unique index"的 Redis?

我正在尝试使用Redis作为持久存储。我想将用户存储在Redis中,但我希望用户ID以及用户电子邮件地址是“唯一的”。这是我所在的地方:MULTISETusers:1""HSETusers-indexes:emailuser-email@gmail.com1EXEC我使用事务是因为我不希望数据库在Redis崩溃时最终处于无效状态。目前,这只会默默地覆盖现有值。如果电子邮件地址已存在于哈希中,我需要交易失败/回滚。我可以使用HSETNX来防止索引被覆盖,但是此时用户对象已经被覆盖了。我可以提前检查电子邮件地址是否存在于索引中,但那样我就会与其他客户发生争用情况。我可以向我的应用程序添加写

html - ExpressJs 无法获取/注册错误

我在使用expressjs时遇到错误。它说“无法获取/register.html”。我不知道如何解决这个问题。我想向/register显示register.html,但我总是出错。顺便说一句,这是我的代码人员。谢谢大家,我希望你能帮助我,我已经用谷歌搜索了这个错误1​​小时,但我仍然无法让它工作。app.jsvarexpress=require("express");varapp=express();varredis=require("redis");varclient=redis.createClient();varreply;app.use(express.bodyParser()

Cassandra /雷迪斯 : Way to create feed without Cassandra 'IN' secondary index?

我的应用程序功能与Cassandra集成时遇到了一些问题。我正在尝试为我的用户创建一个内容提要。用户可以创建帖子,而帖子又具有字段user_id。我将Redis用于整个社交图,而将Cassandra列仅用于对象。在Redis中,用户1有一个名为user:1:followers的集合,其中包含他/她的所有关注者ID。这些关注者ID对应于用户表中的CassandraID和帖子表中的user_id。我的目标最初是简单地将此Redis集中的所有user_id插入一个查询,该查询将使用FROMpostsWHEREuser_idIN(此处为user_ids)并获取二级索引user_id中的所有帖子

Redis:多个排序集中的成员的分页有序 zrank 获取

Redis新手。需要一些帮助。用例:我有成千上万的排行榜。他们的用户名中有适当的分数。一个用户可以属于1个或多个排行榜。我需要一种有效的方法来获取特定用户所属的每个排行榜的排名,最好按排名和分页排序。典型的用户将属于数百个排行榜。据我所知:我为每个用户保留了一组,其中包含他所属的板。为了获得用户的排名,我得到了他的一组板,然后对组中的每个板进行zrank,然后在我的代码中按排名排序。这看起来效率很低,而且不支持分页。我一直在阅读和集思广益,但我被困住了。我需要的是这样的:user1:boards(a,c,e)board:a(user1,user23,user5)board:b(user

redis - 如何在不循环的情况下从两个或更多深度的多个键访问数据

我正在使用redis从服务器获取数据。我正在为以下结构创建流Sadduser_following_keyuser1_id,user2_id,user3_id#datawhichiwanttoaccessisstoredlikethiszadduser1_id_keydata1zadduser2_id_keydata2#Anddata1data2...aresetwhichisstoredlikethisSetdata1some_datasetdata2some_data我想访问data1data2...和some_data而不是在user_following_key返回数据上运行循环,

使用 call_user_func_array 插入时 redis 丢失 key

我试图将10K个元素放入一个数组中,并尝试使用call_user_func_array将它们添加到redisset中,但我得到了一个非常奇怪的结果。这是代码:$redis=newRedis();$redis->connect('127.0.0.1',6380);$list_id=0;$test_ar=array();for($i=0;$iscard('test:'.$list_id);echo"test_cnt:$test_cnt\n";这是输出:testarraycnt:10000arraychunk:Array([0]=>test:0[1]=>2[2]=>4[3]=>2[4]=>4