Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

[PropertyInfo] Use a single cache item per method#30525

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Conversation

@deviantintegral
Copy link
Contributor

QA
Branch?master
Bug fix?no
New feature?yes
BC breaks?no
Deprecations?no
Tests pass?yes
Fixed tickets#29977
LicenseMIT
Doc PRnone

Replaces#30523 with a rebase to master.

This PR changes how property metadata is cached, significantly reducing the number of calls made between PHP and the backend cache. Instead of storing one cache item per method and set of arguments, a single cache item is stored per method. This matches well with real-world use, where most properties in an object will need to be inspected.

Note that the absolute numbers in the above PR are best case. In production environments where memcache is on a remote server, we were seeing multiple seconds consumed by memcache calls.

@fabpot
Copy link
Member

Thank you@deviantintegral.

deviantintegral reacted with thumbs up emoji

@fabpotfabpot merged commit2a4f8a1 intosymfony:masterApr 3, 2019
fabpot added a commit that referenced this pull requestApr 3, 2019
…ntintegral)This PR was merged into the 4.3-dev branch.Discussion----------[PropertyInfo] Use a single cache item per method| Q             | A| ------------- | ---| Branch?       | master| Bug fix?      | no| New feature?  | yes| BC breaks?    | no| Deprecations? | no| Tests pass?   | yes| Fixed tickets |#29977| License       | MIT| Doc PR        | noneReplaces#30523 with a rebase to master.This PR changes how property metadata is cached, significantly reducing the number of calls made between PHP and the backend cache. Instead of storing one cache item per method and set of arguments, a single cache item is stored per method. This matches well with real-world use, where most properties in an object will need to be inspected.Note that the absolute numbers in the above PR are best case. In production environments where memcache is on a remote server, we were seeing multiple seconds consumed by memcache calls.Commits-------2a4f8a1 [PropertyInfo] Use a single cache item per method
@nicolas-grekasnicolas-grekas modified the milestones:next,4.3Apr 30, 2019
@bendavies
Copy link
Contributor

fabpot added a commit that referenced this pull requestJun 26, 2019
This PR was merged into the 4.3 branch.Discussion----------revert#30525 due to performance penalty| Q             | A| ------------- | ---| Branch?       | 4.3| Bug fix?      | yes| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->| BC breaks?    | no     <!-- seehttps://symfony.com/bc -->| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->| Fixed tickets |   <!-- #-prefixed issue number(s), if any -->| License       | MIT| Doc PR        |This reverts#30525, because it introduced a large performance penalty.Here is the effect of that PR when I upgrade my Api Platform project from 4.2.9 to 4.3.1:https://blackfire.io/profiles/compare/28bfbc61-3649-4896-bd03-7201239134cd/graph?settings%5Bdimension%5D=wt&settings%5Bdisplay%5D=landscape&settings%5BtabPane%5D=nodes&selected=Symfony%5CComponent%5CVarExporter%5CInternal%5CExporter%3A%3Aexport%403&callname=main()The reverted PR targeted master. This should go in 4.3?Commits-------3d37cc9 revert#30525 due to performance penalty
nicolas-grekas added a commit that referenced this pull requestJun 26, 2019
* 4.3: (34 commits)  [PhpunitBridge] Read environment variable from superglobals  [Bridge/PhpUnit] Fix PHP5.5 compat  [PhpUnitBridge] More accurate grouping  fixed CS  Extract unrecoverable exception to interface  [FrameworkBundle] Fix calling Client::getProfile() before sending a request  Fix type error  [Security/Core] require libsodium >= 1.0.14  [Workflow] re-add workflow.definition tag to workflow services  [Security/Core] Don't use ParagonIE_Sodium_Compat  revert#30525 due to performance penalty  collect called listeners information only once  [Lock] fix missing inherit docs in RedisStore  [Messenger] fix retrying handlers using DoctrineTransactionMiddleware  [Mailgun Mailer] fixed issue when using html body  [HttpClient] fix timing measurements with NativeHttpClient  [HttpClient] fix dealing with 1xx informational responses  add test to avoid regressions  fix mirroring directory into parent directory  fix typos  ...
nicolas-grekas added a commit that referenced this pull requestJun 26, 2019
* 4.4: (43 commits)  [PhpunitBridge] Read environment variable from superglobals  [Bridge/PhpUnit] Fix PHP5.5 compat  [PhpUnitBridge] More accurate grouping  fixed CS  [Form] remove comment about to-be-removed method as it is used in master by ButtonBuilder  Extract unrecoverable exception to interface  [FrameworkBundle] Fix calling Client::getProfile() before sending a request  Fix type error  [Security/Core] require libsodium >= 1.0.14  [Workflow] re-add workflow.definition tag to workflow services  [Security/Core] Don't use ParagonIE_Sodium_Compat  revert#30525 due to performance penalty  collect called listeners information only once  [Lock] fix missing inherit docs in RedisStore  [Messenger] fix retrying handlers using DoctrineTransactionMiddleware  [Mailgun Mailer] fixed issue when using html body  [Messenger] make all stamps final and mark stamp not meant to be sent  [HttpClient] fix timing measurements with NativeHttpClient  add return type declaration  use proper return types in ErrorHandler and ArgumentResolver  ...
@fabpotfabpot mentioned this pull requestJun 26, 2019
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@fabpotfabpotfabpot approved these changes

@dunglasdunglasAwaiting requested review from dunglas

Assignees

No one assigned

Projects

None yet

Milestone

4.3

Development

Successfully merging this pull request may close these issues.

5 participants

@deviantintegral@fabpot@bendavies@nicolas-grekas@carsonbot

[8]ページ先頭

©2009-2025 Movatter.jp