Swoftは何ですか?
Swoftは、PHPベースのマイクロサービスコルーチンのフレームワークSwooleの拡張機能の実装です。Swoftは、伝統的なPHP-FPMに依存しない、ビルトインWebサーバーと共通コルーチンコルーチンクライアントと常駐メモリ、のような、のようにすることができます移動します。春の雲の枠組み柔軟な注釈と強力なグローバルな依存性注入コンテナ、完璧なサービス管理、柔軟で強力なAOP、標準仕様のPSRと同様の動作と同様の言語のモードはよりを達成そこに行くコルーチン。
蓄積と探査方向の最大三年間でSwoft、SwoftはPHPのコミュニティ春クラウドを戦う、それが高性能なPHPフレームワークとマイクロガバナンスサービスのための最良の選択です。
Swoft v2.0.6
swoft 2.0洗練された最適化されたいくつかのバージョンでは、数多くの本番環境では、ユーザーが認識し、多くの支持を得るために使用されています。私たちはより良いパフォーマンスで、改善と最適化の多くを行っているの公式バージョン。
二つの新しい改良開発ツール、開発者は簡単に使用します:
swoft/swoole-tracker
リンクトラッキング、メモリリーク、ブロックされたチェックの意図とパフォーマンス分析は、開発者が解決することができますswoft-cli
今基本的な構造やコンポーネントを作成するためのアプリケーションのスケルトンだけでなく、クラスファイルの生成をサポートしています
デバッグツール(swoft-swooleトラッカー)
Swoftデバッグツールは、開発者がリンクトラッキング、メモリリーク、ブロックされたチェックの意図とパフォーマンス分析を解決することができます。
インストールするコンポーネント:
composer require swoft/swoole-tracker
コンフィギュレーション・ミドルウェア:
return [
// ...
'httpDispatcher' => [
// Add global http middleware
'middlewares' => [
// ...
\Swoft\Swoole\Tracker\Middleware\SwooleTrackerMiddleware::class,
],
],
// ...
];
リンクトレース
サービス監視
サービスステータス
メモリリーク
ジャム検出
開発ツール(swoft-CLI)
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
アップデート
修理(固定):
- 修理WSサーバーは、顧客の応答メッセージエンドとして現在のデフォルトFDを使用して、メッセージを受信 3a8890cf
- 修复 ws server通过swoole server拿到的全部连接里,fd的类型可能不是整型导致报错。0fa79d7
- 修复 stdlib SystemHelper 在 windows 10 中会被 Defender 删除 71c2893
- 修复
increment/decrement
多拿了一个连接 94c7171 - 修复 模型属性
$modelTimestamps
关闭了无效 94c7171 - 修复 在初始化前调用了log,导致可能会在启动阶段报context丢失错误 5a27704f
- 修复 ws server的握手和open使用同一个顶级协程ID,如果有一个先执行完成,可能会导致后面的出现session丢失 c2cd17a
- 修复
after
定时器传递参数 bug 8ed609a - 修复定时任务内存泄漏和日志打印数据丢失问题 aa6bc32
- 优化 Http server
sgo
处理流程 e60d92e - 修复数据库在事物情况下重连导致数据不一致问题 c2e87f2
- 修复 Aop 极端情况返回
0
问题 85bc1b1 - 修复
BeanFactory::createBean()
方法创建问题 c2e2c89 - 修复 RPC 错误数据是字符串问题 3a34658
- 修复
redisCluster
初始化问题 3a60c06 - 修复
DbException
没有抛出Database
的异常Code
3a60c06 - 修复
ModelAttribute
的getter
和setter
驼峰判断错误 2e2f0f1 - 修复
Aggregate
聚合, 返回字符串强行转换int
错误 7aa98a6 - 修复模型
updateCounters
方法更新之后没有同步实体数据 967d6f8
更新(Update):
- 调整 ws server在worker 退出时自动关闭连接,添加开关配置,可以选择是否开启。3a8890c
- ws server 新增事件:
MESSAGE_PUSH
OPEN_BEFORE
MESSAGE_RECEIVE
e1b0583
增强(Enhancement):
- 新增日志按时间切割 f649df2
- 新增日志支持传递额外参数 55d5533
- 调整和新增了一些ws server相关事件,方便用户使用 e1b0583
- 模型对
Prop
支持 630aad8 - 新增连接连接池(mysql/redis/rpc)启动初始化连接功能 a367173
- tcp server 使用长度分包时,支持自定义头部数据打包、解包格式 a6fbe932
- RPC 调用错误信息调整 d9226b1
- 新增操作
Database
异常, 打印控制台 错误SQL
3a60c06 - 新增操作数据迁移
int
系列 长度支持 967d6f8 - 新增获取原始 sql 方法
getRawSql
967d6f8 - 扩展
updateOrInsert
和updateOrCreate
支持自增参数 967d6f8
扩展(Extra):
Swoftcli
已经支持基本的应用骨架和组件结构创建,以及类文件生成功能SwoftTracker
支持方便开发者调试