使用Elastic Cache在AWS上使用Memcached的Python容器需求

时间:2014-11-18 20:55:17

标签: python django amazon-web-services amazon-ec2 memcached

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有关。我确实打开了11211端口到我的本地IP和EC2 Instances IP,但仍然得到超时错误。不确定我是否可以在本地连接到ElasticCache。

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

答案:

该错误仅与我的本地计算机有关,因为AWS不支持开箱即用的ElastiCache“远程”连接,并且我的连接被AWS安全设置阻止。可能有一些解决方法可以使这项工作,但我没有研究。

结论:在AWS上运行时,一切正常。

0 个答案:

没有答案