Django Elastic Beanstalk 清漆缓存
Posted
技术标签:
【中文标题】Django Elastic Beanstalk 清漆缓存【英文标题】:Django Elastic Beanstalk Varnish Cache 【发布时间】:2013-03-21 17:14:01 【问题描述】:我将 Amazon 的 Elastic Beanstalk 与 Django 应用程序一起使用。它正在连接到后端的 RDS 实例。该应用程序是 99% 的数据驱动的,大多数页面不会更改,因此应该很容易缓存。但是,该站点在中等负载下崩溃了,我已经尝试了所有可用的缓存选项。我认为问题在于我需要像清漆这样的外部缓存机制。但是,除了创建高度定制的 AMI 之外,我没有看到任何使用弹性豆茎安装清漆的“简单”方法。有什么建议吗?
顺便说一句,我正在使用的负载测试服务是“blitz.io”,它可以很快地在服务器上施加大量负载,以模拟被 slashdotted、reddited 等。
【问题讨论】:
什么缓存你是怎么试过的?你试过 django 提供的缓存选项吗? 我已将 Amazon ElastiCache 与 Django memcache 中间件一起使用。我目前正在使用 LocMemCache,它似乎有一些效果,但它仍然很慢(相对而言)。 【参考方案1】:解决了!问题归结为中间件的顺序。我在 UpdateCacheMiddleware 之前有 GZipMiddleware。一旦我将 UpdateCacheMiddleware 放在 MIDDLEWARE_CLASSES 的顶部,缓存就开始正常工作。
【讨论】:
以上是关于Django Elastic Beanstalk 清漆缓存的主要内容,如果未能解决你的问题,请参考以下文章
授权凭证剥离 --- django, elastic beanstalk, oauth
Elastic Beanstalk 上的 Django + MySQL - 查询 MySQL 时出错
AWS Elastic Beanstalk 上禁止使用 Django 403