-
Notifications
You must be signed in to change notification settings - Fork 9.4k
Remove all marketing get parameters to minimize the cache using built-in FPC #39099
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove all marketing get parameters to minimize the cache using built-in FPC #39099
Conversation
Hi @rogerdz. Thank you for your contribution! Add the comment under your pull request to deploy test or vanilla Magento instance:
❗ Automated tests can be triggered manually with an appropriate comment:
Allowed build names are:
You can find more information about the builds here For more details, review the Code Contributions documentation. |
@magento run all tests |
@magento run all tests |
Nice. Maybe you want to update the parameters based on https://github.com/magento/magento2/pull/39188/files#diff-40e00b332f8dd95fbf48a312b9b8cfeee0d4e70bd7528c0e794c84c9e00c113fR85. |
@magento create issue |
@magento run all tests |
@magento run Database Compare, Functional Tests B2B, Functional Tests CE |
@sprankhub, I think you got confused and meant to comment on #35228 Ideally we should have one place where the entire list is defined and can be used both by the Varnish VCL file generator and the non-Varnish based FPC solution. Maybe using a backoffice configuration field? We have a new request for that since today BTW: #39268 (even though the example given there is a very bad idea) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I got right, you’re removing cache parameters on Magento (php) side.
for that purpose, Varnish does way better job, since it works way better and uses resources more efficiently.
I don’t see how someone would use built in full page cache in production, so I don’t think we should update it
Example use case:
you added a new service, let’s say Klaviyo, that adds a dynamic value for each client.
Marketing team has sent an email to all subscribers and they starting clicking on link that goes to a single product page.
What we have right now is - the dynamic get parameter will be removed by Varnish, and after the first request - it will put the result in cache. all next requests will not get to Magento/php - so they will be delivered to clients waaaay faster and won’t create load to web servers, database and redis.
if we accept your changes - this would mean that this dynamic get parameter will be removed on php side, which will result in additional slower responses, additional load to web servers, database and redis.
Having all that in mind, I don’t think we can accept this pull request, but instead, we should actualize the list in Varnish config.
Please correct me if I’m wrong
Sorry, looks like I got confused a bit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot wasn't able to review any files in this pull request.
Files not reviewed (4)
- app/code/Magento/PageCache/Model/App/Request/Http/IdentifierForSave.php: Language not supported
- app/code/Magento/PageCache/Test/Unit/Model/App/Request/Http/IdentifierForSaveTest.php: Language not supported
- lib/internal/Magento/Framework/App/PageCache/Identifier.php: Language not supported
- lib/internal/Magento/Framework/App/Test/Unit/PageCache/IdentifierTest.php: Language not supported
@magento run Functional Tests CE, Unit Tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @rogerdz @engcom-Dash,
The changes looks good to me. But please address the failed automated tests.
Thanks
@magento run all tests |
Hi @rogerdz, Thanks for your Contribution!!. We have verified the issue in Latest 2.4-develop Magento Instance and the issue is not reproducible.Kindly refer the screenshots. ![]() The last request also showing Thanks. |
@engcom-Bravo, are you testing on built-in FPC without Varnish? |
Hi @ihor-sviziev, Thanks for your update!!. We have tested with Full Page Cache(built in) without varnish. ![]() Thanks. |
@engcom-Bravo last request must call url without marketing parameter |
@magento run all tests |
Hi @rogerdz, Thanks for the collaboration & contribution! ✔️ QA PassedPreconditions:
Steps to reproduce
Before: ✖️ ![]() After: ✔️ ![]() Builds are failed. Hence, moving this PR to Extended Testing. Thanks. |
@magento run Integration Tests, Functional Tests CE, Functional Tests B2B |
1 similar comment
@magento run Integration Tests, Functional Tests CE, Functional Tests B2B |
8f36bc3
into
magento:2.4-develop
Description (*)
Same logic when use varnish (https://github.com/magento/magento2/blob/2.4-develop/app/code/Magento/PageCache/etc/varnish7.vcl#L84) but for build-in fpc
Related Pull Requests
Fixed Issues (if relevant)
Manual testing scenarios (*)
Questions or comments
Contribution checklist (*)
Resolved issues: