国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

【workbunny】協(xié)程基建

1.3.5 版本
2025-04-24 版本更新時間
559 安裝
73 star

Webman Coroutine Infrastructure Suite Compatible with Workerman.

Build StatusCodecovLatest Stable VersionPHP Version RequireLicense

計劃 & 說明

  1. 目前 workerman v5/webman 2.1官方均已支持協(xié)程,該插件會基于官方協(xié)程組件圍繞webman上層應(yīng)用功能進行開發(fā)
  2. workbunny/webman-coroutine插件與官方協(xié)程插件workerman-php/coroutine可互聯(lián)使用
  3. 與官方協(xié)程組件workerman-php/coroutine區(qū)別如下:
    • workbunny/webman-coroutine除了Fiber、Swoole/Swow的支持外還支持Ripple事件驅(qū)動
    • workbunny/webman-coroutine著重在協(xié)程睡眠和協(xié)程喚起上做了優(yōu)化,并附帶了一些協(xié)程管理調(diào)試相關(guān)的工具
    • workbunny/webman-coroutine兼容 workerman 4.x/webman 1.x

以上的一些差異點會在后續(xù)與官方協(xié)程組件保持兼容,并會在合適的時機合并至官方協(xié)程組件

簡介

???? webman-coroutine 是一個支持 workerman / webman 開發(fā)框架生態(tài)下的協(xié)程基建支撐插件

起源

  • workerman 4.x 及基于其作為運行容器的 webman 框架不支持協(xié)程
  • workerman 5.x 及基于其作為運行容器的 webman 框架不具備完備的協(xié)程能力
  • workerman / webman 沒有一個較為統(tǒng)一的協(xié)程使用方式,導(dǎo)致切換協(xié)程驅(qū)動的開發(fā)成本較高,試錯成本較高
  • 自行實現(xiàn)協(xié)程版worker、server開發(fā)成本較高,試錯成本較高

workbunny/webman-coroutine 插件誕生緣由及協(xié)程開發(fā)分享

目的

愿景

  1. workerman/webman 開發(fā)環(huán)境下,提供一套簡單的協(xié)程工具包,降低認知負荷。
  2. workerman/webman 開發(fā)環(huán)境下,嘗試實現(xiàn)一套兼容協(xié)程與非協(xié)程開發(fā)的方案,讓選擇和擺脫方案更簡單,避免更多的焦慮。
  3. workerman/webman 開發(fā)環(huán)境下,盡可能實現(xiàn)對官方組件的無侵入式協(xié)程化改造(雖然很難,但也想試試)。
  4. 希望在代碼的實現(xiàn)上能夠給更多PHP開發(fā)帶來一些幫助,甚至靈感。

安裝

通過composer安裝

composer require workbunny/webman-coroutine

目錄

|-- config                       # webman 配置文件
    |-- plugin
        |-- webman-coroutine
            |-- app.php          # 主配置信息
            |-- process.php      # 啟動進程
|-- Events                       # workerman-4.x 事件驅(qū)動文件
|-- Exceptions                   # 異常
|-- Handlers                     # 入口主驅(qū)動
|-- Utils                        # 工具包
    |-- Channel                  # 通道 驅(qū)動
    |-- Coroutine                # 協(xié)程 驅(qū)動
    |-- WaitGroup                # wait group 驅(qū)動
    |-- Worker                   # worker 驅(qū)動
    |-- Pool                     # 對象池 驅(qū)動
    |-- RegisterMethods.php      # 驅(qū)動注冊助手
|-- Factory                      # 入口類
|-- CoroutineWebServer.php       # webman 自定義http服務(wù)
|-- helpers.php                  # 入口助手          

文檔

目錄 地址
API Fucntion-APIs
教程 PHP 協(xié)程入門
- 安裝及配置
- 助手函數(shù)
- workerman環(huán)境
- webman框架
- Utils說明
- 自定義拓展
- 協(xié)程的觀測和管理

參與開發(fā)

規(guī)范

  • 新特性提交請先提交feature-issue,再提交PR,避免重復(fù)開發(fā);
  • Bug修復(fù)請先提交bug-repo-issue,再提交PR,避免重復(fù)開發(fā);

工具

  • 代碼格式化:composer cs-fix
  • 靜態(tài)檢查:composer php-stan
  • 測試與覆蓋:composer unit-test,命令運行后會在項目創(chuàng)建的coverage目錄下生成報告
  • function-apis文檔生成:
    • 使用composer doc-install或自行安裝phpDocumentor
    • 在項目根目錄使用phpDocumentor生成文檔

?? 相關(guān)文章

?? 致謝

??感恩 workerman 和 swow 開發(fā)團隊為 PHP 社區(qū)帶來的創(chuàng)新和卓越貢獻,讓我們共同期待 PHP 在實時應(yīng)用領(lǐng)域的更多突破?。。?/strong>

贊助商