2015-07-12 60 views
0

我想添加视频上传到任务使用django和芹菜+ redis。这些视频最多只有3MB,但似乎将视频传给内存是有问题的,并且达到了redis的限制。最大内存redis heroku django

如何查找redis的最大内存限制?

这是视频上载的样子:

@csrf_exempt 
def tag_location(request): 
    if request.FILES.__contains__('file'): 
     image = request.FILES['file'].read() 
    else: 
     image = None 

    if request.FILES.__contains__('video-file'): 
     video = request.FILES['video-file'].read() 
    else: 
     video = None 

    tasks.tag_location.delay(image,video) 

    return JsonResponse({'response': 1}) 

的任务是100%的工作只是有时文件太大。有没有一种方法可以将视频/图像的文件路径传递给redis,而不是通过文件读取并通过内存传递?

+0

打开与Redis数据库的连接并运行命令CONFIG GET maxmemory。你在使用哪个Redis数据库? –

+0

如果您使用的是Heroku Redis,则每个计划的内存大小也会显示在插件页面上:https://elements.heroku.com/addons/heroku-redis – elithrar

回答

1

maxmemory配置指令用于配置Redis为数据集使用指定数量的内存。

发现的最大内存限制:

要找出一个正在运行的Redis服务器的最大内存限制,您需要使用CONFIG GET命令。 CONFIG GET命令通常用于读取正在运行的Redis服务器的配置参数。 它只接受一个参数,并返回与此参数匹配的所有配置参数作为键值对的列表。

实施例:

redis 127.0.0.1:6379> CONFIG GET maxmemory # gets maximum memory limit of redis server 

64位系统具有如0(零)的maxmemory默认值所得到没有内存限制。
32位系统使用隐含内存限制3GB

redis 127.0.0.1:6379> CONFIG GET maxmemory # output on my 64 bit system 
1) "maxmemory" 
2) "0" 

修改的最大内存限制:

要修改Redis的服务器的最大内存限制,您可以使用redis.conf文件中设置的maxmemory配置指令,或通过在运行时使用CONFIG SET命令。

例如,要配置500兆字节的内存限制,可以在redis.conf文件中使用以下指令。

maxmemory 500mb