The runtime configuration option in the vapor.yml allows you to specify which PHP version a given environment uses.
Amazon recently announced the second version of its operating system: Amazon Linux 2 - that provides optimized performance and long term support, without any additional charges.
Starting today, you may start using PHP on top of Amazon Linux 2 by updating the runtime configuration option in the vapor.yml like so:
id: 3
name: vapor-app
environments:
production:
- runtime: php-8.0
+ runtime: php-8.0:al2
Once the environment is deployed, your application will automatically start using Amazon Linux 2 with zero downtime.
Keep in mind that using Amazon Linux 2 is highly recommended, as Amazon Linux 1 will end-of-life its standard support on December 31, 2020. After that date, Amazon will only be making "maintenance support" updates to the operating system.
We hope you enjoy this new addition to Laravel Vapor. At Laravel, we're committed to providing you with the most robust and developer-friendly PHP experience in the world. If you haven't checked out Vapor, now is a great time to start! You can create your account today at: vapor.laravel.com.
This article was originally posted, with additional formatting, on my personal blog at laravel serializes model Background When dispatching an object onto the queue, behind the scenes Laravel is recursively serializing the object and all of its properties into a string representation that is then written to the queue. There it awaits a queue worker to retrieve it from the queue and unserialize it back into a PHP object (Phew!). Problem When complicated objects are serialized, their string representations can be atrociously long, taking up unnecessary resources both on the queue and application servers. Solution Because of this, Laravel offers a trait called SerializesModels which, when added to an object, finds any properties of type Model or Eloquent\Collection during serialization and replaces them with a plain-old-PHP-object (POPO) known as a ModelIdentifier. These identifier objects represent the original properties Model type and ID, or IDs in the case of an Eloquent\Collection,