Hyperf は、最先端のコルーチン サーバーと数多くの実績のあるコンポーネントを搭載した、非常にパフォーマンスが高く柔軟な PHP CLI フレームワークです。 Hyperf は、ベンチマークで PHP-FPM フレームワークを決定的に上回るだけでなく、柔軟性と構成に重点を置いているという点でも独特です。 Hyperf には、コンポーネントとクラスがプラグイン可能でメタプログラム可能であることを保証するために、AOP 対応 (アスペクト指向プログラミング) 依存関係インジェクターが付属しています。 Hyperf のコア コンポーネントはすべて PSR 標準に厳密に従っており、他のフレームワークで使用できます。
Hyperf のアーキテクチャは、 Coroutines
、 Dependency injection
、 Events
、 Annotations
、およびAOP
の組み合わせを使用して構築されています。 MySQL
、 Redis
、その他の一般的なコルーチン クライアントの提供に加え、 Hyperf
WebSocket server / client
、 JSON RPC server / client
、 gRPC server / client
、 Zipkin/Jaeger (OpenTracing) client
、 Guzzle HTTP client
、 Elasticsearch client
のコルーチン互換バージョンも提供します。 、 Consul client
、 ETCD client
、 AMQP component
、 Apollo configuration center
、 Aliyun ACM
、 ETCD configuration center
、 Token bucket algorithm-based limiter
、 Universal connection pool
、 Circuit breaker
、 Swagger
、 Snowflake
、 Simply Redis MQ
、 RabbitMQ
、 NSQ
、 Nats
、 Seconds level crontab
、 Custom Processes
など。 したがって、開発者はコルーチン互換の実装を完全に回避できます。これらのライブラリのバージョン。
ご安心ください、Hyperf は依然として PHP フレームワークです。 Hyperf は、 Middleware
、 Event Manager
、 Coroutine-optimized Eloquent ORM
(およびモデル キャッシュ!)、 Translation
、 Validation
、 View engine (Blade/Smarty/Twig/Plates/ThinkTemplate)
など、期待されるすべてのパッケージを提供します。
新しい PHP フレームワークはたくさんありますが、エレガントなデザインと超高性能を両立するフレームワークはまだ見つかっていません。また、PHP マイクロサービスへの道を開くフレームワークも見つかっていません。このビジョンを念頭に置いて、私たちはこのフレームワークの将来への投資を継続していきます。皆さんも、Hyperf のオープンソース開発への貢献に参加することを歓迎します。
Hyperspeed + Flexibility = Hyperf
。私たちの名前に隠された方程式は、Hyperf の設立の野心を示しています。
Hyperspeed: Swoole
およびSwow
コルーチンを活用することで、Hyperf は大量のトラフィックを処理できます。 Hyperf チームは、エンドユーザーと当社の強力なエンジンの間のあらゆるボトルネックを排除するために、フレームワークに多くの最適化を行いました。
柔軟性: 当社の依存性注入コンポーネントはクラス最高であると信じています。 Hyperf DI
の助けを借りて、コンポーネントとクラスはすべてプラグイン可能でメタプログラム可能です。逆に、すべての Hyperf コンポーネントは世界と共有されることを目的としています。 PSR 標準に対する当社の取り組みは、互換性のあるフレームワークで Hyperf コンポーネントを使用できることを意味します。
これらの特性により、Hyperf は、Web サーバー、ゲートウェイ サーバー、分散ミドルウェア ソフトウェア、マイクロサービス アーキテクチャ、ゲーム サーバー、モノのインターネット (IoT) の実装など、多くの分野で未開発の可能性を発見しました。
Linux、OS X または Cygwin、WSL、Windows
PHP 8.1+
Swoole 5.0+ または Swow 1.4+
よく管理された多言語ドキュメントに加えて、各コンポーネントの多数の単体テストにより、論理的な正確性が保証されます。 Hyperf
一般公開 (2019 年 6 月 20 日) される前に、一部の中規模および大規模インターネット企業によって複数のサービスに非公開で使用され、過酷な運用環境で何年も問題なく実行されてきました。
公式サイト https://hyperf.io
ドキュメント https://hyperf.wiki
Hyperf 内のセキュリティの脆弱性を発見した場合は、[email protected] 経由で Hyperf チームに電子メールを送信してください。すべてのセキュリティの脆弱性は直ちに対処されます。
このプロジェクトは、貢献してくださるすべての人々のおかげで存在します。 [貢献する]。
財政的に貢献して、コミュニティの維持にご協力ください。 [貢献する]
あなたの組織や会社でこのプロジェクトをサポートしてください。あなたのロゴが Web サイトへのリンクとともにここに表示されます。 [貢献する]
コマンド: wrk -c 1024 -t 8 http://127.0.0.1:9501/
10 秒テストを実行中 @ http://127.0.0.1:9501/ 8 スレッドと 1024 接続 スレッド統計 平均標準偏差 最大 +/- 標準偏差 レイテンシ 10.08ms 6.82ms 56.66ms 70.19% 要求/秒 13.17k 5.94k 33.06k 84.12% 10.10 秒で 1049478 リクエスト、190.16MB 読み取りリクエスト/秒: 103921.49 転送/秒: 18.83MB
Nano は、ゼロ構成、スケルトンなしの最小限の Hyperf ディストリビューションであり、単一の PHP ファイルだけで Hyperf アプリケーションを迅速に構築できます。
GoTask は、Go プロセスを Swoole サイドカーとして生成し、双方向 IPC を確立して負荷のかかる処理を Go にオフロードするためのライブラリです。これを Go の Swoole タスクワーカーと考えてください。
Jet は統合モデル RPC クライアントであり、JSONRPC プロトコルが組み込まれており、PHP-FPM や Swoole/Hyperf 環境を含むすべての PHP 環境で実行できます。
Box は、Hyperf アプリケーションのプログラミング エクスペリエンスの向上、PHP 環境と関連依存関係の管理、Hyperf アプリケーションをバイナリ プログラムとしてパッケージ化する機能の提供、Hyperf アプリケーションの管理と展開のためのリバース プロキシ サービスの提供に取り組んでいます。
Hyperf フレームワークは、MIT ライセンスに基づいてライセンス供与されたオープンソース ソフトウェアです。