Symfony /原则缓存性能

时间:2019-11-29 11:16:06

标签: symfony redis doctrine

我正在维护一个使用主义的symfony 4.3项目。

我正在使用以下缓存:

  • 学说元数据和查询缓存
  • 教义二级缓存
  • 自定义标记缓存池

我创建了一个基准来测试这三个缓存中的每一个

  • redis
  • 文件系统
  • 数组
  • 空(意味着禁用,仅适用于二级缓存)

因此,有一个配备SSD的Macbook Pro,它可以配置我的系统,然后为3 x 4 x 3的每种可能的配置运行特定的工作负载。我正在使用docker环境(php-fpm7.3,nginx,postgressql和redis容器)。我正在花时间衡量“绩效”。

这是我的结果:

enter image description here

Ergo:

  • 使用全3文件系统最快(!)
  • 我的现状全3 Redis似乎真的很糟糕

编辑: 我也对标记功能感到困惑,虽然redis是唯一本地支持标记的缓存,但这并没有回报... / edit

当然,这些结果取决于我执行的工作量,但是我尝试尽可能地切合实际,例如。第一步是使用wget对整个应用程序进行一次爬网(大量读取)。

您怎么看? 文件系统(在docker内部)是否有可能“击败” redis缓存?

或者更明确地说:

在不断增长的数据场景中(由于缺乏时间和计算资源,我无法对其进行基准测试),是否有办法解决诸如redis或memcached之类的缓存解决方案?

对于查询和元数据,我认为fielsystem就足够了,但是对于SLC,我的直觉是必须采用内存中解决方案?!?

0 个答案:

没有答案