gpt4 book ai didi

php - Symfony2 性能的奏鸣曲管理员

转载 作者:行者123 更新时间:2023-12-01 23:29:00 24 4
gpt4 key购买 nike

我是 Symfony2 的新手,但我必须承认我很喜欢它。我开始使用 SonataAdmin,但很快就出现了一个重大疑问:加载列表页面需要近 3 秒(使用空数据库),这正常吗?我知道在生产中我应该使用 APC 或 memcache 来加快速度,但对我来说这看起来很奇怪,它需要花费这么多时间。

我正在使用带有 Turnkey lamp(1GB 内存)的虚拟机进行开发。

我的电脑相当新:Intel i3 8Gb 内存。

请告诉我你的想法/经历。

谢谢。

最佳答案

在开发环境中,很难衡量性能,因为框架和 bundle 有时需要解析大量配置文件、内省(introspection)对象并执行耗时的任务并缓存输出。

在生产中,很多事情都是预先完成的,即当您部署到网络服务器时。预先完成的工作是为了避免解析文件、执行耗时的任务等。这就是为什么在生产中,如果不再次运行 php app/console clear:cache ,您几乎无法更改任何内容修改已经完成。即使更改单个 Twig 模板也需要清除缓存才能更新呈现给最终用户的输出。

我没有亲自测试这个包,但是管理生成器包需要检查很多属性和对象才能正确执行他的任务。这确实很耗时,但只有在开发模式下才需要。在生产中,这种自省(introspection)过程是不必要的,并且信息可能缓存在某个地方。这应该会在生产环境中提供比在开发环境中更好的性能。

底线,我认为这个 bundle 不会遇到性能问题,但这取决于您的需求和目标。我唯一可以确定的是:在生产模式下测试它,看看它最终会给你带来的速度。清除生产模式的缓存并使用 app.php 而不是 app_dev.php。另外,请查看 performance 上的文档可以在 symfony.com 上找到。

php app/console cache:clear --env=prod --no-debug

希望这有帮助。

问候,
马特

关于php - Symfony2 性能的奏鸣曲管理员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8280474/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com