测试环境:
vmware虚拟机(2g内存,2核)
linux(centos7 64)
nginx 1.17.1
php 7.3.7(zts)
mysql5.7.26(windows版,供虚拟机连接)
redis3.2.100(windows版64位,供虚拟机连接)
phalcon 3.4.4(项目新创建,模型等新创建)
laravel 5.5(项目新创建,模型等新创建)
数据库均连接本机bkqw_bdf数据库
框架 \ 文档
实现语言
国产
文档
简介
优势
Yaf
C
是
http://www.laruence.com/manual/
鸟叔写的
C扩展php框架,不是很活跃,文档不是很亲民
鸟哥本身是php的开发者,写的框架相对更适合php开发,php-fpm模式下框架常驻内存
Think
Php
是
https://www.kancloud.cn/manual/thinkphp5/118003
Think团队的php框架,文档齐全
国内久经考验的成熟框架,建议使用精简版
laravel
Php
否
https://laravelacademy.org/laravel-docs-5_5
Laravel团队,文档齐全
国内外用的人比较多,久经考验,扩展丰富,代码构建简单,比较胖
cphalcon
C
否
https://docs.phalconphp.com/3.4/en/installation
英文文档,还没有较全的中文文档,可以参考国内cphalcon7的文档
php-fpm模式下框架常驻内存
Phalapi
Php
是
http://docs.phalapi.net/#/v2.0/tutorial
文档齐全
轻量级,响应快
swoft
依赖swoole
是
https://www.swoft.org/docs//
依赖swoole,文档齐全
注解开发,swoole运行,常驻内存
easyswoole
依赖swoole
是
https://www.easyswoole.com/Cn/
依赖swoole,文档齐全
swoole运行,常驻内存
Swoole
C
是
https://wiki.swoole.com/
韩天峰大作,文档不是很新,有些新特性估计得自己摸索
功能强大,协程,异步,让php也能够进行多进程多任务模式开发,非常适合定时处理以及队列任务处理
Php-x
C
是
https://wiki.swoole.com/wiki/index/prid-15
韩天峰大作,封装了zend api。不熟悉zend api,但又有c++基础的可以用这个开发php扩展,例如一些算法或工具类的实现。
Php-x,对于一些初级C又不懂zend api的人来说,简直是神器
框架
客户端
请求数
QPS
yaf 3.0.8
Ab 100
1000
1050
Thinkphp 5
Ab 100
1000
247
Laravel 5.5
Ab 100
1000
34
Phalcon 3.4.4
Ab 100
1000
829
Phalapi 2.7.0
Ab 100
1000
415
Swoft 2.0.3
Ab 100
1000
1270
Easyswoole 3.2.5
Ab 100
1000
1287
Swoole 4.3.0
Tars
框架
命令行构建
内存安全
进程安全
扩展支持
综合难度
yaf 3.0.8
(yaf_cg) 仅生成目录结构
安全
安全
极低,很多需要自己实现,不过可以composer加载别的框架的
较难
Thinkphp 5
(think) 全支持,同laravel
安全
安全
高
一般
Laravel 5.5
(artisan) 全支持
安全
安全
非常高
一般
Phalcon 3.4.4
(phalcon) 全支持
安全
安全
中等,借用composer
中等,主要是容器注册那块
Phalapi 2.7.0
(bin目录) 半支持
安全
安全
中等,借用composer
一般
Swoft 2.0.3
(bin目录) 全支持
不安全(可能内存泄漏)
注意静态变量的使用,运行过程有可能会死掉,增加运维工作
低,借用composer
容易出问题,内存问题,进程问题,维护问题
Easyswoole 3.2.5
不支持
不安全(可能内存泄漏)
注意静态变量的使用,运行过程有可能会死掉,增加运维工作
低,借用composer
容易出问题,内存问题,进程问题,维护问题
Swoole 4.3.0
不支持
不安全(可能内存泄漏)
注意静态变量的使用,运行过程有可能会死掉,增加运维工作
低,借用composer
容易出问题,内存问题,进程问题,维护问题
Tars
不支持
基于swoole
基于swoole
基本是腾讯在用
较难