当前位置: 首页> 开源推荐> 正文

推荐Webman:一款与传统PHP框架写法相似的超高性能可扩展框架,性能提升高达十倍,兼具易用性和卓越性能,是开发高效、高并发应用程序的理想选择

webman是什么?

webman是一款基于workerman开发的高性能HTTP服务框架。webman用于替代传统的php-fpm架构,提供超高性能可扩展的HTTP服务。你可以用webman开发网站,也可以开发HTTP接口或者微服务。

除此之外,webman还支持自定义进程,可以做workerman能做的任何事情,例如websocket服务、物联网、游戏、TCP服务、UDP服务、unix socket服务等等。

webman的理念

以最小内核提供最大的扩展性与最强的性能。

webman仅提供最核心的功能(路由、中间件、session、自定义进程接口)。其余功能全部复用composer生态,这意味着你可以在webman里使用最熟悉的功能组件,例如在数据库方面开发者可以选择使用Laravel的illuminate/database,也可以是ThinkPHP的ThinkORM,还可以是其它组件如Medoo。在webman里集成他们是非常容易的事情。

webman具有以下特点

1、高稳定性。webman基于workerman开发,workerman一直是业界bug极少的高稳定性socket框架。

2、超高性能。webman性能高于传统php-fpm框架10-100倍左右,比go的gin echo等框架性能高1倍左右。

3、高复用。无需修改,可以复用现有composer生态。

4、高扩展性。支持自定义进程,可以做workerman能做的任何事情。

5、超级简单易用,学习成本极低,代码书写与传统框架没有区别。

6、支持二进制打包,无需PHP环境即可直接运行。

7、使用最为宽松友好的MIT开源协议。

webman安装教程:

环境需求

PHP >= 7.2

Composer >= 2.0

安装PHP+Composer环境(已有环境则跳过)

curl -sO https://www.workerman.net/install-php-and-composer && sudo bash install-php-and-composer

通过以上命令可以快速安装PHP+Composer环境,支持PHP8.0-8.3版本。

也可手动下载webman官方提供的静态PHP,解压即可使用。

1. 创建项目

composer create-project workerman/webman

2. 运行

进入webman目录

windows用户

双击 windows.bat 或者运行 php windows.php 启动

提示

如果有报错,很可能是有函数被禁用,参考函数禁用检查解除禁用

linux用户

调试方式运行(用于开发调试,打印数据会显示在终端,终端关闭后webman服务也随之关闭)

php start.php start

守护进程方式运行(用于正式环境,打印数据不会显示在终端,终端关闭后webman服务会持续运行)

php start.php start -d

提示

如果有报错,很可能是有函数被禁用,参考函数禁用检查解除禁用

3.访问

浏览器访问 http://ip地址:8787

webman目录结构

.

├── app 应用目录

│ ├── controller 控制器目录

│ ├── model 模型目录

│ ├── view 视图目录

│ ├── middleware 中间件目录

│ │ └── StaticFile.php 自带静态文件中间件

│ ├── process 自定义进程目录

│ │ ├── Http.php Http进程

│ │ └── Monitor.php 监控进程

│ └── functions.php 业务自定义函数写到这个文件里

├── config 配置目录

│ ├── app.php 应用配置

│ ├── autoload.php 这里配置的文件会被自动加载

│ ├── bootstrap.php 进程启动时onWorkerStart时运行的回调配置

│ ├── container.php 容器配置

│ ├── dependence.php 容器依赖配置

│ ├── database.php 数据库配置

│ ├── exception.php 异常配置

│ ├── log.php 日志配置

│ ├── middleware.php 中间件配置

│ ├── process.php 自定义进程配置

│ ├── redis.php redis配置

│ ├── route.php 路由配置

│ ├── server.php 端口、进程数等服务器配置

│ ├── view.php 视图配置

│ ├── static.php 静态文件开关及静态文件中间件配置

│ ├── translation.php 多语言配置

│ └── session.php session配置

├── public 静态资源目录

├── runtime 应用的运行时目录,需要可写权限

├── start.php 服务启动文件

├── vendor composer安装的第三方类库目录

└── support 类库适配(包括第三方类库)

├── Request.php 请求类

├── Response.php 响应类

├── helpers.php 助手函数(业务自定义函数请写到app/functions.php)

└── bootstrap.php 进程启动后初始化脚本

webman前台演示图:

webman后台演示图:

官方项目地址:https://www.workerman.net/webman

GitHub: https://github.com/walkor/webman

码云: https://gitee.com/walkor/webman

最新文章