![](https://img-blog.csdnimg.cn/20210628162813915.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Hyperf
文章平均质量分 64
Hyperf 高性能PHP协程框架实战
李维山
后端架构师
展开
-
Hyperf 高性能PHP协程框架实战(十五)微服务
一、什么是微服务 微服务就是将一个复杂的项目进行模块化服务拆分,是一种架构性上的概念,与框架和语言无关。每一个服务可以独立开发部署,服务间可以使用通信协议互相调用,可以方便地对服务进行扩展和重构。 微服务的主要意义在于:流量分压、模块高度自治、服务隔离保护。二、RPC ...原创 2021-07-16 18:56:35 · 1022 阅读 · 3 评论 -
Hyperf 高性能PHP协程框架实战(十四)RabbitMQ
1原创 2021-07-08 18:06:47 · 865 阅读 · 2 评论 -
Hyperf 高性能PHP协程框架实战(十三)Kafka
Kafka是一种高吞吐量的分布式发布订阅消息系统,有如下特性: 通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。 高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒数百万的消息。 支持通过Kafka服务器和消费机集群来分区消息。 支持Hadoop并行数据加载。 Kafka搭建参考文章:Linux下搭建Kafka服务 Composer安装Kafka组件:https://packagist.org/packag...原创 2021-07-05 17:57:03 · 961 阅读 · 1 评论 -
Hyperf 高性能PHP协程框架实战(十二)Redis异步队列
一、Redis异步队列 Composer安装:composer require hyperf/async-queue 配置文件config/autoload/async_queue.php :<?phpdeclare(strict_types=1);return [ 'default' => [ 'driver' => Hyperf\AsyncQueue\Driver\RedisDriver::class, ...原创 2021-07-05 16:23:03 · 1980 阅读 · 6 评论 -
Hyperf 高性能PHP协程框架实战(十一)数据库使用
.原创 2021-07-05 14:20:10 · 1031 阅读 · 2 评论 -
Hyperf 高性能PHP协程框架实战(十)AOP 面向切面编程
概念AOP 为Aspect Oriented Programming的缩写,意为:面向切面编程,通过动态代理等技术实现程序功能的统一维护的一种技术。AOP 是 OOP 的延续,也是 Hyperf 中的一个重要内容,是函数式编程的一种衍生范型。利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。用通俗的话来讲,就是在 Hyperf 里可以通过切面(Aspect)介入到任意类的任意方法的执行流程中去,从而改变或加强原方...原创 2021-06-29 16:32:16 · 1173 阅读 · 3 评论 -
Hyperf 高性能PHP协程框架实战(九)事件机制
概念AOP 为Aspect Oriented Programming的缩写,意为:面向切面编程,通过动态代理等技术实现程序功能的统一维护的一种技术。AOP 是 OOP 的延续,也是 Hyperf 中的一个重要内容,是函数式编程的一种衍生范型。利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。用通俗的话来讲,就是在 Hyperf 里可以通过切面(Aspect)介入到任意类的任意方法的执行流程中去,从而改变或加强原方...原创 2021-06-29 11:42:20 · 335 阅读 · 1 评论 -
Hyperf 高性能PHP协程框架实战(六) 日志输出
安装日志组件:composer require hyperf/logger 日志配置文件位置:config/autoload/logger.php,默认配置如下:<?phpdeclare(strict_types=1);return [ 'default' => [ 'handler' => [ 'class' => Monolog\Handler\StreamHandler::class,...原创 2021-03-01 17:27:30 · 1089 阅读 · 0 评论 -
Hyperf 高性能PHP协程框架实战(七) WebSocket 服务
安装WebSocket服务:composer require hyperf/websocket-server 在配置文件 config/autoload/server.php 文件中,servers下添加WebSocket服务配置ws,如下:'servers' => [ [ 'name' => 'http', 'type' => Server::SERVER_HTTP, ...原创 2021-03-02 14:10:30 · 1780 阅读 · 8 评论 -
Hyperf 高性能PHP协程框架实战(一) 安装和启动
【本文基于Hyperf2.1官方文档:https://hyperf.wiki/2.1/#/,在此鸣谢Hyperf作者及开源项目贡献者。】系统环境:Linux CentOS7.6PHP版本:7.3.20Swoole版本:4.5.91、Composer安装Hyperf#移到项目目录cd /www/wwwroot#composer安装composer create-project hyperf/hyperf-skeleton根据提示选择自己需要的依赖:(Com..原创 2021-01-22 23:01:42 · 1263 阅读 · 2 评论 -
Hyperf 高性能PHP协程框架实战(三) 依赖自动注入
目录1、构造函数注入2、@Inject 注解注入 场景:如下有一个用户服务类UserService,类中存在getInfoById()方法,传递用户id获取用户信息。现在要再IndexController中调用该方法。可以使用以下自动注入依赖的方式,避免用new手动实例化。<?phpdeclare(strict_types=1);namespace App\Service;class UserService{ public function getIn...原创 2021-01-23 04:45:06 · 435 阅读 · 0 评论 -
Hyperf 高性能PHP协程框架实战(二) 定义访问路由
1、配置文件定义路由可以在 /config/routes.php 路由配置文件中定义路由,配置如下:<?phpdeclare(strict_types=1);use Hyperf\HttpServer\Router\Router;Router::addRoute(['GET', 'POST', 'HEAD'], '/', 'App\Controller\IndexController@index');Router::get('/favicon.ico', function ()原创 2021-01-23 00:00:18 · 359 阅读 · 0 评论 -
Hyperf 高性能PHP协程框架实战(五) 请求与响应
1、获取请求参数 通过use Hyperf\HttpServer\Contract\RequestInterface;获得对应的请求对象RequestInterface $request 如下为获取一些请求参数的示例:<?phpdeclare(strict_types=1);namespace App\Controller;use Hyperf\HttpServer\Contract\RequestInterface;use Hyperf\H...原创 2021-01-23 16:20:27 · 1184 阅读 · 5 评论 -
Hyperf 高性能PHP协程框架实战(四) 中间件的使用
场景:开发中可能会遇到跨域问题,我们希望每一个请求过来,服务端程序都可以设置允许跨域,这时就可以用到中间件,来拦截请求并做出一些配置。1、生成一个中间件 示例:使用命令生成一个设置跨域的中间件 CorsMiddlewarephp ./bin/hyperf.php gen:middleware Http/CorsMiddleware 此时会自动生成中间件文件: 修改代码,实现设置跨域功能:<?phpdeclare(...原创 2021-01-23 11:49:52 · 444 阅读 · 0 评论 -
Hyperf 高性能PHP协程框架实战(八) 协程
1原创 2021-05-25 18:57:59 · 638 阅读 · 2 评论