我想知道是否可以将Symfony应用程序的所有缓存数据保存在像Amazon ElastiCache这样的Redis容器中。
我读到了你可以在框架中选择的RedisAdapter:
缓存: …
您可以在相同的配置中更改系统缓存:
framework: cache: app: cache.adapter.redis system: cache.adapter.redis default_redis_provider: "redis://%env(REDIS_HOST)%:%env(REDIS_PORT)%"
这应该存储所有与框架相关的缓存,例如Redis中的翻译,模板,编译注释等。您可能还需要更改其他与应用程序相关的缓存,如Doctrine和其他第三方工具。
你可能也想看一下 链适配器 它保存所有链接适配器中的所有条目,但是从头到尾逐个取出它们,这使得它成为一种提供回退的好方法,以防您的Redis群集关闭或遇到停机时间。如果您使用基于Docker的设置,您应该能够在构建期间预热所有缓存,然后Symfony不需要编写任何新的缓存,这样即使您不使用Redis缓存或在链中使用它。