Swoft 是一款基于 Swoole 扩展实现的 PHP 微服务协程框架。Swoft 能像 Go 一样,内置协程网络服务器及常用的协程客户端且常驻内存,不依赖传统的 PHP-FPM。有类似 Go 语言的协程操作方式,有类似 Spring Cloud 框架灵活的注解、强大的全局依赖注入容器、完善的服务治理、灵活强大的 AOP、标准的 PSR 规范实现等等。
Swoft 通过长达三年的积累和方向的探索,把 Swoft 打造成 PHP 界的 Spring Cloud, 它是 PHP 高性能框架和微服务治理的最佳选择。
Swoft 2.0 经过几个版本的打磨和优化,已在大量的生产业务中使用,得到很多用户的肯定和支持。正式版本我们做了许多改进和优化,拥有了更好的性能。
新增和改进了两个开发工具,方便开发者使用:
swoft/swoole-tracker swoft-cli
Swoft 调试利器可以帮开发者解决链路追踪、内存泄漏、阻塞检查意以及性能分析。
安装组件:
composer require swoft/swoole-tracker
配置中间件:
return [ // ... 'httpDispatcher' => [ // Add global http middleware 'middlewares' => [ // ... /Swoft/Swoole/Tracker/Middleware/SwooleTrackerMiddleware::class, ], ], // ... ];
swoft-cli 新增场景功能类生成(控制器、中间件、任务等),创建项目骨架、组件初始化脚手架工具。
安装:
wget https://github.com/swoft-cloud/swoft-cli/releases/download/{VERSION}/swoftcli.phar
php swoftcli.phar gen:http-ctrl user --prefix /users
现在可以通过swoft-cli来快速创建一个新项目。默认提供 5 套模板仓库,方便用户初始化不同项目骨架。
php swoftcli.phar create:application --help
也可以通过swoft-cli来创建新的组件,并帮助你快速完成初始化配置:
php swoftcli.phar create:component --help
increment/decrement
多拿了一个连接 94c7171 $modelTimestamps
关闭了无效 94c7171 after
定时器传递参数 bug 8ed609a sgo
处理流程 e60d92e 0
问题 85bc1b1 BeanFactory::createBean()
方法创建问题 c2e2c89 redisCluster
初始化问题 3a60c06 DbException
没有抛出 Database
的异常 Code
3a60c06 ModelAttribute
的 getter
和 setter
驼峰判断错误 2e2f0f1 Aggregate
聚合, 返回字符串强行转换 int
错误 7aa98a6 updateCounters
方法更新之后没有同步实体数据 967d6f8 MESSAGE_PUSH
OPEN_BEFORE
MESSAGE_RECEIVE
e1b0583 Prop
支持 630aad8 Database
异常, 打印控制台 错误 SQL
3a60c06 int
系列 长度支持 967d6f8 getRawSql
967d6f8 updateOrInsert
和 updateOrCreate
支持自增参数 967d6f8 Swoftcli SwoftTracker