Closed cayolblake closed 2 years ago
@cayolblake
Where have you found a reference to upscale/magento2-swoole
?
It's a proprietary technology not available to the general public.
I'm not aware of any other integration of Magento 2 with Swoole.
@sshymko
Its mentioned here https://f6ba4354-1dad-434e-a580-d7e157fb4fd7.usrfiles.com/ugd/f6ba43_7f5d79ff26ca4a76a78d1021300ebdfc.pdf and https://www.atwix.com/magento/atwix-magenews-jul-2020/ and from here https://twitter.com/SergiiShymko/status/1272579161924624386 before you remove the tweet 🤔
It also clearly mentions the following.
Deployment steps:
1. Install Swoole PHP extension
2. Install upscale/magento2-swoole Composer package
3. Install Upscale_Swoole Magento 2 module
Why are you prohibiting access to this from the general public?
@cayolblake Correct, that's the only mention of the module. The Tweet was taken down to avoid potential legal issues.
The module is proprietary and wasn't intended to be publicly available. There's a very slim chance of it being open sourced in the future. Will let you know if that ever happens, but I wouldn't count on that.
@sshymko Thanks for the explanation.
If one would want to approach implementing this, any pointers or helpers you can provide?
Is it only changes to laminas/mezzio or whatever low-level 3rd-party framework you depend on or it requires patching in the core?
Also, since you mention its proprietary tech, does this mean there's a way to purchase/use it legally? even for Adobe Commerce?
Would appreciate the enlightenment.
@cayolblake Retrofitting PHP applications designed for FastCGI environment for compatibility with Swoole is a monumental task. It took ~2 years of research & development and a pretty sizable implementation to achieve this for Magento 2.
The programming model of Swoole is like Node.js for PHP. It provides access to the request/response processing loop and retains state between requests. Integration involves mapping Swoole request/response objects, compatibility of PHP sessions, and management of in-memory state.
Currently, Swoole - Magento 2 integration is not offered commercially. The project remained in experimental state and wasn't updated for compatibility with the latest Magento versions. The vision was for it to be included into Magento core, but Adobe has taken a different route with the Magento platform.
The project was tested on Open Source version of Magento and never on proprietary Commerce edition. It requires infrastructure changes (Swoole PHP extension and different web-server set up than that of PHP-FPM) which is incompatible with Magento/Adobe Cloud environment that doesn't give control over the infrastructure.
@sshymko
Thanks for the details. I do work on Swoole since long and are friendly with its requirements and capabilities.
I wonder since Adobe took a different route like you said, it would make sense to release the research outcomes to the public to benefit and enhance over. Having a Magento2+Swoole implementation would mean outstanding performance enhancement automagically.
Would it be possible for you to reconsider releasing the code? Is it owned by Adobe and you are legal obliged not to release it?
This would benefit thousands of users and engage e-commerce s as e know it for the better.
@cayolblake Legally, nothing prevents releasing the code, it just never was the objective of the project. Will consider your request and let you know if the decision is ever made in that regard.
That's very respectful of you @sshymko
Appreciate keeping up with the thread and explaining things.
Also looking forward too if the decision was ever made :) 👍
@sshymko
Any luck on considerations here?
Hello @sshymko
Where can I find repo "upscale/magento2-swoole" or any other alternative on running Magento2 served by Swoole?
Sorry to open issue here but I couldn't find any other location more appropriate!
Much appreciated.