(S)Eventual Consistency on SilverStripe Platform
As the SilverStripe open source product continues to evolve, we on the Platform team are kept on our toes as we try to keep pace with the rapid changes. For example, when SilverStripe 4 released its first beta, we reworked the architecture of SilverStripe Platform (SSP) to accommodate sites running SS4 - just make sure you are on version 3.11.0 or above.
In June this year, SilverStripe 3.6.0 was released, introducing PHP 7 support on the 3 branch of the core SilverStripe modules. Combined with SS4’s support (nay, encouragement) of the use of PHP 7, the challenge was laid down to offer PHP 7 support on SSP. Previously, we had managed alternate PHP versions through the use of a different “base” box - PHP 5.4 was on offer on the Debian Wheezy box, and PHP 5.6 on the Debian Jessie box. However, this time we wanted to make it simpler - and easier for us to manage as well.
To this end, we enlisted the help of deb.sury.org, a host for a selection of Debian packages, but of particular interest to us were the PHP packages. Not only did this allow us to install versions of PHP otherwise not available to our Debian release, such as PHP 7.1 on Jessie, but it allowed us to standardise our PHP structure with our orchestration scripts - no more
/etc/php5 to throw everything off.
Sweet! How do I get it?
For you, dear reader, it’s decidedly simple - just edit your
.platform.yml file as below:
Couldn’t be easier really. Just make sure your site is compatible with the PHP version you select before you go and you should be ready to rock. Currently PHP versions 5.6 and 7.1 are available - we’ll add and adjust to this list as new versions are released.
Now go get those performance gains!