The project goals and prospects #28
Replies: 7 comments 6 replies
-
|
Congratulations! Keep up the good work. |
Beta Was this translation helpful? Give feedback.
-
|
So you choose the second option?------ requires the new M3 memory manager (with multi-threading support), |
Beta Was this translation helpful? Give feedback.
-
|
This project is really interesting. I've ever used "Swoole" the serious problem of "Swoole" is document is not clear and not update when they change the major version. I totally agree with you and not understand why PHP official team is not focus on asynchronous (and coroutine) feature this will change PHP forever. |
Beta Was this translation helpful? Give feedback.
-
|
This is the actually right way to go when it comes to modern languages multithreading. Kotlin and Swift are a good examples to follow in that aspect, for what i know they solve that in such a beautiful way. There is an option like Edmond said, to still have this shipped alongside PHP 8.6 as an extension. Multithreading would be nice v2 with lets say for a future php version like 9 or 10. |
Beta Was this translation helpful? Give feedback.
-
|
First of all — thank you, @EdmondDantes. Your fork of Unit with TrueAsync graceful shutdown (nxt_php_quit_handler + ZEND_ASYNC_SHUTDOWN()) is exactly what we needed. We cherry-picked your commit into FreeUnit — the community LTS fork of the archived Unit application server — with full attribution: freeunitorg/freeunit@b78e5a4. |
Beta Was this translation helpful? Give feedback.
-
|
给你点个赞👍 |
Beta Was this translation helpful? Give feedback.
-
|
This is a fascinating direction |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
While the
ThreadPoolis being developed, I have something to say about the RFC and the project’s goals.The project has not lost hope of becoming an official part of PHP. However, there are no plans in the near future to submit an RFC or make any changes. For now, the project will rather wait for a response/action/reaction from the PHP community.
For now, the project has the status of an “experimental version” This may change over time.
Previously, the goal of the project was to integrate asynchrony into the PHP core. This task is almost complete. Let’s say version 1.0.0 is released. What’s next?
An answer to that question already exists. The next step is to turn PHP into a language capable of working in stateful applications, which is currently far from reality.
There is now a clear understanding of what needs to be done and how to approach it, unlike at the start of the project.
One of the most interesting directions is a new memory manager, code-named M3, along with a new background garbage collector designed specifically for long-running applications.
The goal is to make PHP convenient for building long-running applications, while preserving its stability and simplicity. This is a challenging task, but not an impossible one.
All of this together can change the language in terms of its internal capabilities and how it is used. Asynchrony was only a small key to that.
This is not a joke. This is not a toy. There are clear intentions to bring this project to a production-ready state.
I know there will be many people who will say: if it’s not official, I won’t use it.
My position is: a choice can only be made when there is one.
Beta Was this translation helpful? Give feedback.
All reactions