swow / swow
基于协程的多平台支持引擎,专注于并发I/O
Requires
- php: >=8.0
- composer/semver: ^3.4
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.1|^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3
- phan/phan: ^5.4
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9|^10|^11
- rector/rector: ^1
Suggests
- ext-swow: *
Replaces
- swow/php-stub-generator: *
- swow/psr7-plus: *
- swow/swow-library: *
- swow/swow-stub: *
- swow/swow-utils: *
This package is auto-updated.
Last update: 2024-09-06 03:46:46 UTC
README
🚀 Swow是一个多平台支持并基于协程的引擎,专注于并发I/O
👾 设计理念
Swow致力于使用最小的C核心和大部分PHP代码来支持PHP高性能网络编程,这决定了它更侧重于通过无缝集成PHP代码和C内核,同时确保关键性能,从而提供强大的二次开发能力。
此外,它提供各种调试机制和强大且易于使用的调试工具,确保开发者尽可能摆脱BUG的烦恼,普通开发者也能借助工具达到专家级的调试能力,从而最大化开发效率。
🎮 安装
与任何开源项目一样,Swow始终在最新的发布版中提供最强的稳定性和功能,请确保您使用的是最新版本。
🔎 要求
- 如Linux、Windows、macOS等常见操作系统。几乎与libuv相同
- PHP 8.0.0或更高版本,推荐使用最新版本
👨🎤 使用Composer
拉取源代码
composer require swow/swow
然后在vendor/bin
目录下运行自动安装程序swow-builder
以开始安装
./vendor/bin/swow-builder --install
更新Swow源代码后,您应使用rebuild
选项重新编译Swow,然后进行安装
./vendor/bin/swow-builder --rebuild --install
有关swow-builder
的更多信息,请参阅扩展安装文档 - 使用Composer。
🐧 手动安装(类UNIX系统)
克隆Swow(您也可以通过Composer导入,然后cd到vendor/swow/swow/ext
并手动安装)
git clone https://github.com/swow/swow.git
标准的构建流程。使用root权限安装到系统中
cd swow/ext && \ phpize && ./configure && make && \ sudo make install
Ⓜ️ 手动安装(Windows)
您也可以直接在最新版本中下载DLL。
🔰️ 安全问题
安全问题应通过电子邮件私下报告至[email protected]。您应在24小时内收到回复。如果您没有收到回复,请通过电子邮件跟进,以确保我们已经收到您原始的信息。
🖊️ 贡献
对Swow开发的贡献非常欢迎!
您可以通过以下方式做出贡献
❤️ 贡献者
PHP高性能协程网络通信引擎开发之路崎岖难行,这是一项孤独的处于顶端的开源工作。
非常感谢以下合作伙伴对Swow项目的贡献,没有你们就没有现在的Swow。
💬 开发 & 讨论
- Wiki:https://docs.toast.run/swow/en
- 博客(中文) https://docs.toast.run/swow-blog/chs
- 功能(中文) https://docs.toast.run/swow-blog/chs/init.html
- API 参考:https://docs.toast.run/swow-api/ci.html
- 讨论:https://github.com/swow/swow/discussions
- 待办事项:https://github.com/swow/swow/projects
📃 许可证
Swow 可在Apache 许可证 2.0 版本下使用。Swow 还包括一些外部库,这些库可以在不同的许可证下使用。请参阅LICENSES.full以获取完整的许可证文本。