This week’s update mainly does a lot of optimization work for json-rpc components and adds keepaliveio function for AMQP. At the same time, we also released the hyperf / super globals component. By installing this component, the underlying layer will automatically hook off$_ GET、$_ POST、$_ REQUEST、$_ SERVER、$_ COOKIE、$_ These super global variables, session, can keep the usage of php-fpm without causing data confusion between coroutines. At the same time, we also fixed some component bugs, which were released in version 1.1.14. It is highly recommended to use user updates to json-rpc, AMQP, aliyun ACM and devtool.
Direct access to the official website hyperf.io Or document hyperf.wiki View updates.
- #1166 added keepaliveio function to AMQP;
- #1208 for json-rpc response
error.data.codeValue to pass exception code;
- #1208 is
- #In 1215, the hyperf / super globals component is added to adapt to some third-party packages that do not support psr-7;
- #1219 increased AMQP consumers
enableProperty to control whether the consumer starts with the server;
- #1208 fixed the problem that exception and error could not be handled correctly under json-rpc TCP server;
- #1208 fixed the problem that json-rpc did not check whether the request ID and the response ID were consistent;
- #1223 fix configprovider scanner will not scan composer.json The configuration of require dev in;
- #1254 repair execution
init-proxy.shThe command will report that bash does not exist in some environments such as alpine;
- #1208 optimizes some logic of json-rpc components;
- #1174 adjusted
Hyperf\Utils\ParallelIn the format of abnormal output, trace information will now be printed together;
- #1224 allows the configuration acquisition process of aliyun ACM configuration center to parse UTF-8 characters. At the same time, the configuration will be automatically obtained once after the worker is started, and the pulled configuration will now be transferred to the user-defined process;
- #1235 releases the corresponding connection after the AMQP producer executes declare;
- #1227 upgrade
jcchavezs/zipkin-php-opentracingDepends on version 0.1.4;
Hyperf is based on
Swoole 4.4+The implementation of the high-performance, high flexibility PHP coprocessing framework, built-in coroutine server and a large number of commonly used components, performance than the traditional based on
PHP-FPMThe standard components are implemented based on PSR standard and based on powerful dependency injection design, which ensures that most components or classes are
Framework component library in addition to the common coprocessor version
Redis client, we also have a program version for you
Websocket server and client、
JSON RPC server and client、
Grpc server and client、
Opentracing (Zipkin, Jaeger) client、
Guzzle HTTP client、
Configuration centers of Apollo, etcd, zookeeper and alicloud ACM、
Fault current limiter based on token bucket algorithm、
Universal connection pool、
Swagger document generation、
Blade, Smarty, twig, plates and thinktemplate view engines、
Snowflake global ID generator、
Prometheus monitoringIt can save the trouble of implementing the corresponding version of the coroutine.
Hyperf also provides
Dependency injection container based on psr-11、
AOP aspect oriented programming、
Middleware based on psr-15、
Event manager based on psr-14、
Redis / rabbitmq message queue、
Automatic model caching、
Cache based on psr-16、
Crontab second level timing task、
Validation form validationAnd other very convenient functions to meet the rich technical and business scenarios, out of the box.
The original intention of the framework
Although the framework based on PHP language is in the era of a hundred flowers contending, we still can’t see a perfect framework for the coexistence of elegant design and ultra-high performance, nor a framework that paves the way for PHP microservices. This is hyperf And the original intention of our team members, we will continue to invest and make efforts to this end. You are also welcome to join us in the open source construction.
Hyperspeed + Flexibility = HyperfFrom the name, we will
Ultra high speedand
flexibilityAs a gene for hyperf.
- For ultra-high speed, we base on the swote coprocessor and do a lot of optimization in the framework design to ensure the output of ultra-high performance.
- For flexibility, we are based on hyperf’s powerful dependency injection components. The components are implemented based on PSR standard contracts and contracts defined by hyperf. Most components or classes in the framework are replaceable.
Based on the above characteristics, hyperf will have rich possibilities, such as implementing single web services, API services, gateway services, distributed middleware, microservice architecture, game server, Internet of things (IOT).
We have invested a lot of time in the construction of documents to solve various problems caused by the lack of documents. The documents also provide a lot of examples, which are equally friendly to novices.
Official development document of hyperf
We have done a lot of unit testing for the components to ensure that the logic is correct, which currently exists
1291A total of
3803Before the formal opening of hyperf (June 20, 2019), we have already passed the test of severe production environment. Now, many large Internet enterprises have deployed hyperf to their production environment and run stably.
Official website and communication
GitHub point star supports us
Gitee code cloud point star supports us
Hyperf official website
QQ group: 862099724