This week’s major new
Lightweight directed acyclic graph task scheduling Libraryand
Inverse Polish representationTwo incubation projects, and fixed bugs of some components, continue to improve the stability of hyperf, released on2.1.4Version.
It is recommended that you update this version with the following command.
composer update "hyperf/*" -o
- #3165Repair method
MySQL 8.0Version is not working properly.
whereStatement because of the code is not rigorous, resulting in bound parameters will be malicious replacement problem.
json-rpcDue to the end-to-end service restart, the client receives abnormal data all the time.
kafkaIt can not be used normally in cluster mode.
json-rpcDue to the end-to-end service restart of the client, all the connections in the connection pool are invalid. When a new request comes in, the first use will report an error.
hyperf/watcherComponent added a more friendly drive
JsonRpcPoolTransporterA new retrial mechanism is added. When the connection, contract and packet receiving fail, it will be retried twice by default, and the packet receiving timeout will not be retried.
set_error_handlerThe related input parameter code solves the problem of static detection error caused by input parameter mismatch.
hyperf/json-rpcComponent, when the connection is broken, it will try to reconnect first.
- #3174Strict inspection
whereStatement binding parameters.
Hyperf is based on
Swoole 4.5+The PHP coroutine framework with high performance and high flexibility, built-in coroutine server and a large number of commonly used components, has better performance than the traditional one
PHP-FPMThe standard components are based onPSR standardImplementation, based on powerful dependency injection design, ensures that most components or classes are
Framework component library in addition to the common coroutine version
Redis client, and we’ve also prepared the
Websocket server and client、
JSON RPC server and client、
Grpc server and client、
Opentracing (Zipkin, Jaeger) client、
Guzzle HTTP client、
Consul, Nacos Service Center、
Configuration centers of Apollo, etcd, zookeeper, Nacos and alicloud ACM、
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 service monitoringAnd so on, which saves the trouble of implementing the corresponding version.
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 scenarios and business scenarios, out of the box.
Although the framework based on PHP language is now in an era of contention, we still can’t see a perfect framework with elegant design and ultra-high performance, or a framework that really paves the way for PHP micro services. This is the original intention of hyperf and its team members, and we will continue to invest in and make efforts for it, You are also welcome to join us in the open source construction.
Hyperspeed + Flexibility = HyperfFrom the name we will
Ultra high speedand
flexibilityAs the gene of hyperf.
- For ultra-high speed, we are based on the spool coroutine and do a lot of optimization on the framework design to ensure ultra-high performance output.
- For flexibility, we are based on hyperf’s powerful dependency injection components, which are all based onPSR standardMost of the components or classes in the framework are replaceable.
Based on the above characteristics, hyperf will have rich possibilities, such as single web service, API service, gateway service, distributed middleware, micro service architecture, game server, Internet of things (IOT), etc.
We have invested a lot of time in the construction of documents to provide a high-quality document experience to solve various problems caused by the lack of documents. A large number of examples are also provided on the documents, which are also friendly to novices.
Hyperf official development document
We have done a lot of unit tests for the components to ensure the correctness of the logic
1733Single test and total test
5383Hyperf is a project that has experienced severe production environment. At present, many large Internet enterprises have deployed hyperf to their own production environment and run stably.
GithubPoint star to support us
Gitee code cloudPoint star to support us
Hyperf communication group (full): 862099724
Hyperf communication group 2: 811414891
Nail group (full): 34538367
Nail group 2: 34488757
This work adoptsCC agreementReprint must indicate the author and the link of this article