Home Backend Development PHP Tutorial Laravel method code for optimizing website opening speed

Laravel method code for optimizing website opening speed

Feb 07, 2018 am 10:12 AM
laravel Open speed

Laravel is a powerful framework with many components and huge code. Its ease of use comes at the expense of performance. Even so, it is still an excellent framework, but it must be optimized and improved in a formal environment. Website opening speed. , summarizes some methods to improve Laravel website performance. Therefore, this article mainly introduces to you some methods for optimizing the opening speed of Laravel website. The introduction in the article is very detailed. Friends in need can refer to it. Let’s take a look together. I hope it can help everyone.

1. Turn off debug

Open the .env file and set debug to false.

APP_ENV=local
APP_DEBUG=false
APP_KEY=base64:sT/aTFeaE13eyao1Raee6jC9Ff+Yle1SE+wtyk0H6B4=
Copy after login

2. Cache routing and configuration

php artisan route:cache

php artisan config:cache
Copy after login

3. Laravel Optimization command

php artisan optimize
Copy after login

4. Composer optimization

sudo composer dump-autoload --optimize
Copy after login

5. Using Laravel cache

Use Laravel’s Cache method to cache content, including file cache, database cache, redis cache, use Redis can also use predis components, and can also be combined with multiple caching methods.

$lists = Cache::remember('travel.destination.lists', 20, function () {
 return $this->destination->getList();
});
Copy after login

6. Use CDN

For example, Qiniu CDN will give you 20G traffic and 20G storage space every month, which is completely enough for small sites.

7. Use PHP 7 and enable OPcache

Several tips to improve the performance of PHP 7, the first one is to enable opache, quote the original text:

Remember to enable Zend Opcache , because PHP7 is faster even without Opcache enabled than PHP-5.6 with Opcache enabled, so during the previous testing period, someone did not enable Opcache.

My Alibaba Cloud server is connected through a server called PHP 7 provided by remi's centos source does not have opcache installed by default. Use the yum list yum70* command to search it. Sure enough, it is there, so install it:

yum install php70-php-opcache.x86_64
Copy after login

Then restart php-fpm and use service php70-php-fpm restart command. (Different systems and environments install and enable opache according to their own circumstances)

Create a new php file and use the phpinfo() function to display the php.ini information. If OPcache can be found item, indicating that it was successfully enabled. Installing and enabling PHP 7 is to add another wing to PHP 7!

8. Turn on gzip compression in nginx

Turning on gzip compression in Nginx on the server is one of the ways to optimize website performance. It can effectively reduce the consumption of server bandwidth. The disadvantage is that it will increase the CPU occupancy rate. , but many times the CPU is often the most idle.

Quote from the introduction of nginx official website:

The ngx_http_gzip_module module is a filter that compresses responses using the “gzip” method. This often helps to reduce the size of transmitted data by half or even more.

Enable gzip compression in Nginx

Open the nginx.conf file and add the following:

gzip on;
gzip_min_length 1k;
gzip_buffers 16 64k;
gzip_http_version 1.1;
gzip_comp_level 9;
gzip_types text/plain application/x-javascript application/javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary on;
Copy after login

Introduction to gzip parameters

GZIP ON|OFF

Turn on or off the gzip module

GZIP_MIN_LENGTH 1000

Set the minimum number of bytes of the page allowed for compression. The number of page bytes is obtained from the Content-Length in the header. The default value is 0, which compresses the page regardless of its size. It is recommended to set the number of bytes to be greater than 1k. If it is less than 1k, it may become more and more compressed. That is: gzip_min_length 1024

GZIP_PROXIED EXPIRED NO-CACHE NO-STORE PRIVATE AUTH;

Enable when Nginx is used as a reverse proxy, turn on or off the results returned by the back-end server, the prerequisite for matching is The backend server must return a header containing "Via".

GZIP_TYPES TEXT/PLAIN APPLICATION/XML;

Match the MIME type for compression, (whether specified or not) the "text/html" type will always be compressed.

Determine whether to enable gzip compression through the browser

For example, in Firefox, open a web page and open the debug control bar, as shown in the figure:

The Content-Encoding field is gzip, indicating that the web page is gzip compressed.

This is not just a performance optimization method for Laravel websites. Many of them are general website performance optimization methods. Of course, there are many places that can be optimized.

Related recommendations:

Function steps for automatically extracting article content keywords seo optimization website in php

The above is the detailed content of Laravel method code for optimizing website opening speed. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Comparison of the latest versions of Laravel and CodeIgniter Comparison of the latest versions of Laravel and CodeIgniter Jun 05, 2024 pm 05:29 PM

The latest versions of Laravel 9 and CodeIgniter 4 provide updated features and improvements. Laravel9 adopts MVC architecture and provides functions such as database migration, authentication and template engine. CodeIgniter4 uses HMVC architecture to provide routing, ORM and caching. In terms of performance, Laravel9's service provider-based design pattern and CodeIgniter4's lightweight framework give it excellent performance. In practical applications, Laravel9 is suitable for complex projects that require flexibility and powerful functions, while CodeIgniter4 is suitable for rapid development and small applications.

How do the data processing capabilities in Laravel and CodeIgniter compare? How do the data processing capabilities in Laravel and CodeIgniter compare? Jun 01, 2024 pm 01:34 PM

Compare the data processing capabilities of Laravel and CodeIgniter: ORM: Laravel uses EloquentORM, which provides class-object relational mapping, while CodeIgniter uses ActiveRecord to represent the database model as a subclass of PHP classes. Query builder: Laravel has a flexible chained query API, while CodeIgniter’s query builder is simpler and array-based. Data validation: Laravel provides a Validator class that supports custom validation rules, while CodeIgniter has less built-in validation functions and requires manual coding of custom rules. Practical case: User registration example shows Lar

Laravel - Artisan Commands Laravel - Artisan Commands Aug 27, 2024 am 10:51 AM

Laravel - Artisan Commands - Laravel 5.7 comes with new way of treating and testing new commands. It includes a new feature of testing artisan commands and the demonstration is mentioned below ?

Which one is more beginner-friendly, Laravel or CodeIgniter? Which one is more beginner-friendly, Laravel or CodeIgniter? Jun 05, 2024 pm 07:50 PM

For beginners, CodeIgniter has a gentler learning curve and fewer features, but covers basic needs. Laravel offers a wider feature set but has a slightly steeper learning curve. In terms of performance, both Laravel and CodeIgniter perform well. Laravel has more extensive documentation and active community support, while CodeIgniter is simpler, lightweight, and has strong security features. In the practical case of building a blogging application, Laravel's EloquentORM simplifies data manipulation, while CodeIgniter requires more manual configuration.

Laravel vs CodeIgniter: Which framework is better for large projects? Laravel vs CodeIgniter: Which framework is better for large projects? Jun 04, 2024 am 09:09 AM

When choosing a framework for large projects, Laravel and CodeIgniter each have their own advantages. Laravel is designed for enterprise-level applications, offering modular design, dependency injection, and a powerful feature set. CodeIgniter is a lightweight framework more suitable for small to medium-sized projects, emphasizing speed and ease of use. For large projects with complex requirements and a large number of users, Laravel's power and scalability are more suitable. For simple projects or situations with limited resources, CodeIgniter's lightweight and rapid development capabilities are more ideal.

Laravel vs CodeIgniter: Which framework is better for small projects? Laravel vs CodeIgniter: Which framework is better for small projects? Jun 04, 2024 pm 05:29 PM

For small projects, Laravel is suitable for larger projects that require strong functionality and security. CodeIgniter is suitable for very small projects that require lightweight and ease of use.

Which is the better template engine, Laravel or CodeIgniter? Which is the better template engine, Laravel or CodeIgniter? Jun 03, 2024 am 11:30 AM

Comparing Laravel's Blade and CodeIgniter's Twig template engine, choose based on project needs and personal preferences: Blade is based on MVC syntax, which encourages good code organization and template inheritance. Twig is a third-party library that provides flexible syntax, powerful filters, extended support, and security sandboxing.

LG mass-produces 27-inch 480Hz QHD gaming OLED panel with record-breaking clarity and response speed LG mass-produces 27-inch 480Hz QHD gaming OLED panel with record-breaking clarity and response speed Sep 01, 2024 pm 03:37 PM

Recently, LG Display announced that its 27-inch 480Hz QHD gaming OLED panel has officially entered mass production. This panel has created a new high in refresh rate and response speed among OLED products. The 480Hz refresh rate is paired with a GtG grayscale response time of 0.02ms, which is a step further than the previous record of 0.03ms, bringing the ultimate experience to game types such as FPS and racing. . The new panel optimizes LG Display’s META Technology to improve the luminous efficiency of OLED materials. The image quality is enhanced and specular reflection is greatly reduced. The four-sided frameless design expands the field of view and brings an immersive experience. Pixel structure optimization WRGB pixel structure is optimized for gaming and document editing needs. Text display is clearer

See all articles