-
-
Notifications
You must be signed in to change notification settings - Fork 367
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
v0.3 - Official PHP support on Lambda, better performances and AWS SAM #113
Conversation
This is amazing! What's the long-term plan for building the runtime? Will Also, will building the runtime be invoked as part of the first |
@nealio82 I finally answered in #114: #114 (comment) About building runtimes: ideally you shouldn't have to worry about this, it just works (see the WIP instructions in the diff: https://github.com/mnapoli/bref/pull/113/files#diff-279a8ca151371a6a63058dc411985dd1R9). And locally it just works too, SAM is incredibly awesome for this. The only thing I'm worried with SAM when running locally is performances because you get a cold start every time. But you can also still run Symfony/Laravel the only way locally, it still works that way. We'll see as we use it more. |
The goal here is that whether we deploy PHP code on small on large lambdas we don't have to mess with this option. Lambda's memory limit will cut the process anyway if it gets too large in memory.
Add tests for the runtime layers
Improve the documentation about PHP
This follows the existing standards in popular Linux distributions.
Fix #191 and how the php.ini is dealt with
After doing some testing this flag actually removes warning logs. When enabled any uncaught exception in a PHP FPM worker will not be logged. After removing it the logs are correct again. Let's disable this for now.
Disable logging above "warning" in PHP-FPM
Log exceptions and errors in PHP functions + add a truckload of tests
Merging so that we can work on master to prepare the new release 🎉 Thanks everyone involved! The new release is happening in a few days if all goes well. |
This pull request will contain all the changes planned for v0.3 to keep master (v0.2.*) stable in the meantime.
The future website for Bref 0.3: bref.sh
Summary of changes
AWS has released an API to provide support for any language in Lambda. Bref will move from its Javascript-based hack to this new official API.
Bref will provide a PHP runtime optimized for CLI scripts (workers, CLI tasks, simple PHP lambdas, etc.) as well as another PHP runtime optimized for HTTP applications (based on PHP-FPM).
It is very likely that Bref will switch from the "serverless framework" to using AWS SAM instead for deployment and configuration (see #99). On top of advanced integration to other AWS services, this brings very useful tools for local development based on Docker.
With v0.3 it will be even easier to integrate HTTP applications and support any framework. Performances will also dramatically increase thanks to research and benchmarks as well as new experimental modes to run PHP faster in some scenarios (more information to come).
Finally, Bref v0.3 will come with a completely rewritten and extensive documentation.
v0.3
Check out the v0.3 Kanban board.
Detailed changes
λ
function because it duplicated thelambda
function #124 Theλ()
function was replaced by alambda()
function