AWS Beanstalk上ElasticCache的.config
和requirements.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上运行时,一切正常。