ThinkPHP is a fast, compatible and simple lightweight domestic PHP development framework. It is released under the Apache2 open source agreement. It is transplanted from the Struts structure and improved and perfected. It also draws lessons from It adopts many excellent foreign frameworks and patterns, uses object-oriented development structure and MVC pattern, and integrates the ideas of Struts and TagLib (tag library), RoR's ORM mapping and ActiveRecord pattern.
Laravel is a simple and elegant PHP Web development framework (PHP Web Framework). It can free you from messy codes like noodles; it can help you build a perfect network APP, and every line of code can be concise and expressive.
Performance comparison between thinkphp and laravel:
Performance test
Test time: May 6, 2016
Test tool: siege (because of the MAC system ab always encounters the error pr_socket_recv: Connection reset by peer (54), so I chose siege)
Test machine: MacPro Core i5 processor/8GB memory/256GB SSD flash memory
Test Environment: Apache PHP5.6
Framework version: ThinkPHP 3.2.3 Laravel 5.2
Testing principle: Each test loops 5 times, taking medium data
Supplementary instructions: All Projects are all placed in subdirectories
Result Description
Transactions: 2119 hits Total number of requests processed
Availability: 96.85 % Availability
Elapsed time: 9.74 secs Running time
Data transferred: 1.31 MB Data transfer volume
Response time: 0.60 secs Response time
Transaction rate: 217.56 trans/sec Processing per second Efficiency
Throughput: 0.13 MB/sec Processing data per second
Concurrency: 130.28 Concurrency
Successful transactions: 2162 Successful requests
Failed transactions: 69 Failed request
Longest transaction: 2.85 Longest single request
Shortest transaction: 0.01 Shortest single request
Start test
Increase A controller, and enter HelloWorld 10,000 times in the controller
Concurrency 50 loops 10 times:
The first thing that came to us was ThinkPHP, which looked okay
Transactions: 500 hits
Availability: 100.00 %
Elapsed time: 2.81 secs
Data transferred: 52.45 MB
Response time: 0.26 secs
Transaction rate: 177.94 trans/sec
Throughput: 18.67 MB/sec
Concurrency: 47.10
Successful transactions: 500
Failed transactions: 0
Longest transaction: 0.48
Shortest transaction: 0.03
Then Laravle:
Concurrency 200 loops 10 times:
First is ThinkPHP
Transactions: 1977 hits
Availability: 98.85 %
Elapsed time: 10.03 secs
Data transferred : 207.40 MB
Response time: 0.95 secs
Transaction rate: 197.11 trans/sec
Throughput: 20.68 MB/sec
#Concurrency: 187.68
Successful transactions: 1977
Failed transactions: 23
Longest transaction: 1.22
Shortest transaction: 0.02
Then Laravel
Transactions: 1890 hits
Availability: 94.50 %
Elapsed time: 51.85 secs
Data transferred: 198.27 MB
Response time: 4.88 secs
Transaction rate: 36.45 trans/sec
Throughput: 3.82 MB/sec
Concurrency: 178.00
Successful transactions: 1890
Failed transactions: 110
Longest transaction: 26.01
Shortest transaction: 0.07
Unexpectedly, without optimization, ThinkPHP’s The speed is the fastest, Yii is slightly more, and Laravel finished the test at a faltering pace. The results are somewhat unexpected, but the above test only represents the development environment. The framework will be optimized below to simulate the online environment.
Optimization framework
ThinkPHP:
APP_DEBUG is changed to false
Laravel:
APP_DEBUG is changed to false
php artisan route:cache
php artisan optimize
php artisan config:cache
composer dumpautoload -o
Concurrency 200 loops 10 times:
ThinkPHP
Transactions: 1655 hits
Availability: 82.75 %
Elapsed time: 8.21 secs
Data transferred: 173.62 MB
Response time: 0.69 secs
Transaction rate: 201.58 trans/sec
Throughput: 21.15 MB/sec
#Concurrency: 139.29
Successful transactions: 1655
Failed transactions: 345
Longest transaction: 7.83
Shortest transaction: 0.00
Laravel:
Transactions: 1520 hits
Availability: 76.00 %
Elapsed time: 34.95 secs
Data transferred: 159.45 MB
Response time: 3.15 secs
Transaction rate: 43.49 trans/sec
Throughput: 4.56 MB/sec
Concurrency: 136.84
Successful transactions: 1520
Failed transactions: 480
Longest transaction: 19.18
Shortest transaction: 0.00
The strange thing is that when the framework turns off the debugging mode, a relatively large error occurs. Many failures. However, it is obvious that after simple optimization, Laravel's performance has been greatly improved, but it is still lower than the other two frameworks.
in conclusion:
ThinkPHP’s performance is nearly four times higher than Laravel.
php Chinese website, a large number of free laravel introductory tutorials, welcome to learn online!
The above is the detailed content of Thinkphp and laravel performance comparison. For more information, please follow other related articles on the PHP Chinese website!

thinkphp是国产框架。ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。

本篇文章给大家带来了关于thinkphp的相关知识,其中主要介绍了关于使用think-queue来实现普通队列和延迟队列的相关内容,think-queue是thinkphp官方提供的一个消息队列服务,下面一起来看一下,希望对大家有帮助。

thinkphp基于的mvc分别是指:1、m是model的缩写,表示模型,用于数据处理;2、v是view的缩写,表示视图,由View类和模板文件组成;3、c是controller的缩写,表示控制器,用于逻辑处理。mvc设计模式是一种编程思想,是一种将应用程序的逻辑层和表现层进行分离的方法。

本篇文章给大家带来了关于thinkphp的相关知识,其中主要介绍了使用jwt认证的问题,下面一起来看一下,希望对大家有帮助。

thinkphp扩展有:1、think-migration,是一种数据库迁移工具;2、think-orm,是一种ORM类库扩展;3、think-oracle,是一种Oracle驱动扩展;4、think-mongo,一种MongoDb扩展;5、think-soar,一种SQL语句优化扩展;6、porter,一种数据库管理工具;7、tp-jwt-auth,一个jwt身份验证扩展包。

thinkphp查询库是否存在的方法:1、打开相应的tp文件;2、通过“ $isTable=db()->query('SHOW TABLES LIKE '."'".$data['table_name']."'");if($isTable){...}else{...}”方式验证表是否存在即可。

本篇文章给大家带来了关于ThinkPHP的相关知识,其中主要整理了使用think-queue实现redis消息队列的相关问题,下面一起来看一下,希望对大家有帮助。

在thinkphp3.2中,可以利用define关闭调试模式,该标签用于变量和常量的定义,将入口文件中定义调试模式设为FALSE即可,语法为“define('APP_DEBUG', false);”;开启调试模式将参数值设置为true即可。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

Dreamweaver Mac version
Visual web development tools

Notepad++7.3.1
Easy-to-use and free code editor

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
