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

授权凭证剥离 --- django, elastic beanstalk, oauth

Elastic Beanstalk 上的 Django + MySQL - 查询 MySQL 时出错

AWS Elastic Beanstalk 上禁止使用 Django 403

Elastic Beanstalk 上 Django/Celery 的权限问题

Elastic Beanstalk 上用于 Django 的 PostgreSQL