make和new关键字的区别
Go语言中 new 和 make 是两个内置函数,主要用来创建并分配类型的内存。在我们定义变量的时候,可能会觉得有点迷惑,不知道应该使用哪个函数来声明变量,其实他们的规则很简单,new 只分配内存,而 make 只能用于 slice、map 和 channel 的初始化,下面我们就来具体介绍一下。 …
分享接入Aliyun ACM配置中心
最近将配置中心接入到Aliyun ACM,期间碰到了一些小问题,总结下来希望对后来人有帮助。 本地配置composer require hyperf/config-aliyun-acm //安装 php bin/hyperf.php vendor:publish hyperf/config-aliy…
Docker安装Redis配置
创建本地路径## 数据存放目录 mkdir -p /docker/redis/data ## 配置文件存放目录 mkdir -p /docker/redis/conf 根据自己的 Docker 镜像,拉取一份 Redis 的配置文件。wget https://raw.githubuserconten…
利用 JSON-RPC 返回 PHP 对象
在[微服务]中JSON-RPC服务,这章中碰到了无法返回返回[PHP对象]的问题。 首先把场景复现下1.服务在没有使用[PHP对象]时是正常的。2.服务提供者的定义<?php namespace App\JsonRpc; use Hyperf\RpcServer\Annotation\RpcS…
RPC(远程过程调用协议)简介
进程间通信(IPC,Inter-Process Communication),指至少两个进程或线程间传送数据或信号的一些技术或方法。进程是计算机系统分配资源的最小单位。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。这些进程可以运…
Laravel生命周期
说到Laravel的生命周期,我们首先要知道laravel有两种模式,一种是HTTP请求,一种是命令行。它们有不同的入口和内核。我们这里以HTTP请求模式来解析laravel的生命周期。 第一步 Laravel 应用的所有请求入口都是 public/index.php 文件。打开 index.php…
中间件代码实现
<?php /** * User: Jobs Lin * Date: 2019/12/14 * Time: 19:52 */ interface Milldeware { public static function handle(Closure $next); } class VerfiyC…
IoC容器与Facades外观模式代码实现
<?php /** * User: Jobs Lin * Date: 2019/12/11 * Time: 15:34 */ interface Log { public function write(); } // 文件记录日志 class FileLog implements Log { …
composer深入理解(3)
如果我们在代码中写下 new phpDocumentor\Reflection\Element(),PHP 会通过 SPL_autoload_register 调用 loadClass -> findFile -> findFileWithExtension。步骤如下: 将 \ 转为文件…