hyperf - 🚀 A coroutine framework that focuses on hyperspeed and flexibility

  •        71

Hyperf is an extremely performant and flexible PHP CLI framework based on Swoole 4.5+, powered by the state-of-the-art coroutine server and a large number of battle-tested components. Aside from the decisive benchmark outmatching against PHP-FPM frameworks, Hyperf also distinct itself by its focus on flexibility and composability. Hyperf ships with an AOP-enabling dependency injector to ensure components and classes are pluggable and meta programmable. All of its core components strictly follow the PSR standards and thus can be used in other frameworks. Hyperf's architecture is built upon the combination of Coroutine, Dependency injection, Events, Annotation, AOP (aspect-oriented programming). Core components provided by Hyperf can be used out of the box in coroutine context. The set includes but not limited to: MySQL coroutine client, Redis coroutine client, WebSocket server and client, JSON RPC server and client, gRPC server and 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, Swoole Tracker, Snowflake, Simply Redis MQ, RabbitMQ, NSQ, Nats, Seconds level crontab, Custom Processes, etc. Be assured Hyperf is still a PHP framework. You will also find familiar packages such as Middleware, Event Manager, Coroutine optimized Eloquent ORM (And Model Cache!), Translation, Validation, View engine (Blade/Smarty/Twig/Plates/ThinkTemplate) and more at your command.

https://www.hyperf.io
https://github.com/hyperf/hyperf

Tags
Implementation
License
Platform

   




Related Projects

swoft - ⚡️ Modern High performance AOP and Coroutine PHP Framework, base on Swoole

  •    PHP

The first high-performance PHP coroutine full-stack componentization framework based on Swoole native coroutine, built-in coroutine web server and commonly-used coroutine client, resident memory, which has no dependency on PHP-FPM, asynchronous non-blocking IO implementation, similar to synchronous client style of writing to achieve the use of asynchronous clients, without complex asynchronous callback, no tedious yield, similar Go language coroutines, flexible annotations framework, a powerful global dependency injection container base on annotations, and great service governance , flexible and powerful AOP, PSR specification implementation, etc., could be used to build high-performance Web systems, APIs, middleware, basic services, microservice and so on. Chinese Document English Document Not yet, please help us write it.

zend-expressive - PSR-15 middleware in minutes!

  •    PHP

We provide two ways to install Expressive, both using Composer: via our skeleton project and installer, or manually. The simplest way to install and get started is using the skeleton project, which includes installer scripts for choosing a router, dependency injection container, and optionally a template renderer and/or error handler. The skeleton also provides configuration for officially supported dependencies.

slim-jwt-auth - PSR-7 and PSR-15 JWT Authentication Middleware

  •    PHP

This middleware implements JSON Web Token Authentication. It was originally developed for Slim but can be used with any framework using PSR-7 style middlewares. It has been tested with Slim Framework and Zend Expressive. Middleware does not implement OAuth 2.0 authorization server nor does it provide ways to generate, issue or store authentication tokens. It only parses and authenticates a token when passed via header or cookie. This is useful for example when you want to use JSON Web Tokens as API keys.

container - Small but powerful dependency injection container

  •    PHP

This package is compliant with PSR-1, PSR-2 and PSR-4. If you notice compliance oversights, please send a patch via pull request.The following versions of PHP are supported by this version.

Aura.Di - Dependency Injection System

  •    PHP

A serializable dependency injection container with constructor and setter injection, interface and trait awareness, configuration inheritance, and much more. This package is installable and PSR-4 autoloadable via Composer as aura/di.


httplug - HTTPlug, the HTTP client abstraction for PHP

  •    PHP

HTTPlug, the HTTP client abstraction for PHP. HTTP client standard built on PSR-7 HTTP messages. The HTTPlug client interface is compatible with the official standard for the HTTP client interface, PSR-18. HTTPlug adds an interface for asynchronous HTTP requests, which PSR-18 does not cover.

siler - :zap: Flat-files and plain-old PHP functions rockin'on

  •    PHP

Siler is a set of general purpose high-level abstractions aiming an API for declarative programming in PHP. That is it. Actually, Siler is a library, not a framework (maybe a micro-framework), the overall program flow of control is dictated by you. So, no hidden configs or predefined directory structures.

Guzzle - an extensible PHP HTTP client

  •    PHP

Guzzle is a PHP HTTP client that makes it easy to send HTTP requests and trivial to integrate with web services. It can do both synchronous and asynchronous requests using the same interface, It supports simple interface for building query strings, POST requests, streaming large uploads, streaming large downloads, using HTTP cookies, uploading JSON data, etc, Uses PSR-7 interfaces for requests, responses, and streams.

slim-basic-auth - PSR-7 HTTP Basic Authentication Middleware

  •    PHP

This middleware implements HTTP Basic Authentication. It was originally developed for Slim but can be used with all frameworks using PSR-7 style middlewares. It has been tested with Slim Framework and Zend Expressive. Install latest version using composer.

route - Fast router and dispatcher built on top of FastRoute

  •    PHP

This package is compliant with PSR-1, PSR-2, PSR-4, PSR-7 and PSR-11. If you notice compliance oversights, please send a patch via pull request.The following versions of PHP are supported by this version.

Slim - A micro framework for PHP

  •    PHP

Slim is a PHP micro framework that helps you quickly write simple yet powerful web applications and APIs. Slim provides a fast and powerful router that maps route callbacks to specific HTTP request methods and URIs. It supports parameters and pattern matching. Slim supports any PSR-7 HTTP message implementation so you may inspect and manipulate HTTP message method, status, URI, headers, cookies, and body.

go-microservice-helpers - A collection of handy snippets that simplify creation of GRPC servers and clients

  •    Go

A collection of handy snippets that simplify creation of GRPC servers and clients. The provided helpers allow to create grpc endpoints with zipkin distributed tracing pre-configured; spawn http servers that serve both grpc and common http traffic; simplify golang crypto primitives to load EC keys.

phpcs-psr - A PHP_CodeSniffer sniff to check against the PSR-0, PSR-1 and PSR-2

  •    PHP

A PHP_CodeSniffer sniff to check against the PSR-0, PSR-1 and PSR-2

roadrunner - High-performance PHP application server, load-balancer and process manager written in Golang

  •    Go

RoadRunner is an open source (MIT licensed), high-performance PHP application server, load balancer and process manager. It supports running as a service with the ability to extend its functionality on a per-project basis. RoadRunner includes PSR-7/PSR-17 compatible HTTP and HTTP/2 server and can be used to replace classic Nginx+FPM setup with much greater performance.

openapi-psr7-validator - It validates PSR-7 messages (HTTP request/response) against OpenAPI specifications

  •    PHP

This package can validate PSR-7 messages against OpenAPI (3.0.x) specifications expressed in YAML or JSON. This would simplify validation a lot and give you more performance.

Pawl - Asynchronous WebSocket client

  •    PHP

This is the object used to interact with a WebSocket server. It has two methods: send and close. It has two public properties: request and response which are PSR-7 objects representing the client and server side HTTP handshake headers used to establish the WebSocket connection. This is the object received from a WebSocket server. It has a __toString method which is how most times you will want to access the data received. If you need to do binary messaging you will most likely need to use methods on the object.

easy-php - A Faster Lightweight Full-Stack PHP Framework :rocket:

  •    PHP

Why do we need to build a PHP framework by ourself? Maybe the most of people will say "There have so many PHP frameworks be provided, but we still made a wheel?". My point is "Made a wheel is not our purpose, we will get a few of knowledge when making a wheel which is our really purpose".

http-message - The purpose of this PSR is to provide a set of common interfaces for HTTP messages as described in RFC 7230 and RFC 7231

  •    PHP

This repository holds all interfaces/classes/traits related to PSR-7. Note that this is not a HTTP message implementation of its own. It is merely an interface that describes a HTTP message. See the specification for more details.

cache - The Cache component provides an extended PSR-6 implementation for adding cache to your applications

  •    PHP

This component provides an extended PSR-6 implementation for adding cache to your applications. It is designed to have a low overhead so that caching is fastest. It ships with a few caching adapters for the most widespread and suited to caching backends. It also provides a doctrine/cache proxy adapter to cover more advanced caching needs and a proxy adapter for greater interoperability between PSR-6 implementations.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.