使用ElastiCache在AWS上缓存Memcached的Python容器要求

2024-04-19 20:04:12 发布

您现在位置:Python中文网/ 问答频道 /正文

AWS Beanstalk上ElasticCache的.configrequirements.txt设置是什么

我想使用AWS ElastiCache服务,因为我们已经在使用AWS,并且已经启动并运行了AWS Beanstalk Django应用程序

在我的requirements.txt中,我确实有这个功能,但我想我需要添加一些依赖项以使memcached工作:

Django==1.6.4
MySQL-python==1.2.5
argparse==1.2.1
dj-database-url==0.3.0
wsgiref==0.1.2
south==0.8.4
whoosh==2.5.7
django-haystack==2.1.0
pylibmc==1.3.0

这就是我试图运行的:

    CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache',
        'LOCATION': 'djangocache.XYZ.amazonaws.com:11211',
    }
}

通过一些测试,pylibmc==1.3.0导致了错误,我认为requirements.txt文件中缺少了一些依赖项

而且,当我在本地运行这个程序时,我会

error 31 from memcached_get(:1:views.decorators.cache.cache_): A TIMEOUT OCCURRED

我的假设与AWS上的Security Groups有关。我确实打开了本地IP和EC2 InstancesIP的11211端口,但仍然收到超时错误。不确定我是否可以本地连接到ElasticCache

============================================================

回答:

该错误仅与我的本地计算机有关,因为AWS不支持ElastiCache开箱即用的“远程”连接,并且我的连接被AWS安全设置阻止。也许有一些变通办法可以让这项工作顺利进行,但我没有对此进行研究

底线:在AWS上运行时一切正常


Tags: django功能txtawsconfig应用程序cache错误