Category: Performance & Scaling

Beaver in Action: Practical MySQL Optimization

Clients with an existing application sometimes ask me to fix bugs, improve efficiency by speeding up the application, or add a new feature to some existing software. The first stage of this is researching the original code – so-called reverse engineering. With SQL databases, it is not always immediately obvious which...

RESTful Remote Object Proxies with ProxyManager

The proxy pattern is another cool design pattern in software development. A proxy is a class working as an interface to another class or web service. For the sake of simplicity, we’ll refer to proxied classes as subjects throughout the rest of the article. A proxy usually implements the same interface as the subj...

Up and Running with the Fastest PHP Framework on PHP7 in 5 Mins

You may remember our past infatuation with Phalcon, the fastest PHP framework. In this post, we’ll go through the process of getting it up and running in 5 minutes on one of our Homestead Improved instances. If you’re not interested in why or what Phalcon is, just skip ahead to “Setting it up”. ...

Quick Tip: Convenience Hacks for Passing Data to Views

In MVC based architectures, working with template engines is an inevitable part of the development routine. It usually goes like this: we prepare and pass the data to the view. In the view, we print them based on our layout design.Here is a basic example of how it works using Twig. <?php// Twig initialization...

A Pokemon Crash Course on CouchDB

In this tutorial, we’ll walk through working with CouchDB, a NoSQL database from Apache. This tutorial will focus more on the practical side, so we won’t cover what CouchDB is good for, how to install it, why use it, etc. We’ll focus on how to perform database operations through CouchDB’s HTTP A...

6 More Must-Do Grav Tweaks: Ready for Hacker News Traffic!

We previously looked at some essential Grav plugins with which to round off the installation of a personal blog. In this post, we’ll take a look at some additional, advanced plugins, as well as other tweaks we can apply.Related Pages Once a blog has enough posts, user retention becomes more difficult – as...

Can We Have Static Types in PHP without PHP 7 or HHVM?

Now that PHP 7 has been out for a while with interesting features like error handling, null coalescing operator, scalar type declarations, etc., we often hear the people still stuck with PHP 5 saying it has a weak typing system, and that things quickly become unpredictable.[author_more] Even though this is partially...

Sourcehunt: PHP7-Only Alternative to Laravel, HPKP, and More

Time to promote some open source projects again!paragonie/hpkp-builder [15 ★] This library aims to make it easy to build HTTP Public-Key-Pinning headers in your PHP projects, and requires at least PHP 7. HTTP Public Key Pinning, or HPKP, is a security policy delivered via a HTTP response header much like HSTS and ...

Can Symfony Apps Be Fast on Vagrant? Let’s Check with SuluCMS!

In this short tutorial, we’ll set up Sulu and optimize on a Vagrant environment. Why a dedicated tutorial handling this? Besides the fact that Sulu has a rather complex initialization procedure, it is based on Symfony which is infamously slow on virtual machines with shared filesystems, and thus needs additional opti...

Benchmarking: Can AppServer Beat Symfony’s Performance?

After the release of the first part of our Appserver series, it was clear through the ensuing discussions on both SitePoint and Reddit that we had touched a nerve for a good number of PHP channel’s devoted readers. I also quickly realized this new (for PHP) technology had a good number of serious doubters. One o...