Book Image

High Performance with Laravel Octane

By : Roberto Butti
5 (2)
Book Image

High Performance with Laravel Octane

5 (2)
By: Roberto Butti

Overview of this book

Laravel Octane is a very powerful component in the Laravel ecosystem that can help you achieve remarkable app performance. With Laravel Octane, you will find tools (queues, cache, and tables) that facilitate a new asynchronous approach for improving application performance. This book highlights how Laravel Octane works, what steps to take in designing an application from the start, what tools you have at your disposal, and how to set up production environments. It provides complete coverage of the strategies, tools, and best practices to make your apps scalable and performant. This is especially important as optimization is usually the overlooked part in the application development lifecycle. You will explore the asynchronous approach in Laravel and be able to release high-performing applications that have a positive impact on the end-user experience. By the end of this book, you will find yourself designing, developing, and releasing high-performance applications.
Table of Contents (14 chapters)
1
Part 1: The Architecture
3
Part 2: The Application Server
6
Part 3: Laravel Octane – a Complete Tour
9
Part 4: Speeding Up

Optimizing queries with indexes

In the previous chapter, we made queries in parallel.

What if the parallelized queries were slow? Most of the time, implementing an optimization means acting on multiple aspects. In the previous chapter, we saw how to parallelize queries. This approach, as we saw, brings great benefits, but there is something more we can do. What we want to achieve is to further reduce the latency of each individual parallelized task when retrieving data.

To do just that, what we are going to do now is optimize each query that we parallelized in the previous chapter and explore the reasoning behind each one.

We are going to analyze what the characteristics of the query are and what fields are involved in the rows selection phase and the sorting phase.

Let’s start with the following example query:

return $query->where('type', $type)
    ->where('description', 'LIKE', '%something%'...