【发布时间】:2019-07-15 12:18:48
【问题描述】:
我想知道是否可以将 Symfony 应用程序的所有缓存数据保存在像 AWS ElastiCache 这样的 Redis 容器中。
我了解了您可以在框架中选择的 RedisAdapter:
cache:
app: cache.adapter.redis
default_redis_provider: "redis://%env(REDIS_HOST)%:%env(REDIS_PORT)%"
如果您想在 Redis 缓存中保存和读取数据,则该方法有效。
但是 Symfony 的其余数据无论如何都存储在缓存目录中。有没有可能让 Symfony 完全无状态?
【问题讨论】:
-
您是否也尝试将
app.system设置为您的redis 适配器?如果我没记错的话,它应该用于缓存注释、翻译等,基本上是 Symfony 存储在 var/cache 中的所有内容。您可能还需要更改 Doctrine 缓存和您拥有的任何其他 3rd 方缓存。 -
好的,听起来不错。你能举例说明如何将 app.system 设置为 Redis 适配器吗?
-
只需在
framework: cache: system: cache.adapter.redis下添加另一个条目,如app: cache.adapter.redis,仅使用键system。 :)
标签: symfony caching redis stateless horizontal-scaling