分享一张架构图吧

最近在深入研究在 PHP 这个领域的 RPC 微服务。很多都是提及 gRPC、Thrift、Hprose 等。但是,都很复杂。唯独 Yar 框架轻量实用。由于是 中国 PHP 教父惠新宸开发的 RPC 框架。与 PHP 结合起来非常 OK。于是,自己画了一个架构图来验证 Yar 的实用性。

Yar RPC 框架安装与基础使用

[TOC]Yar RPC 框架使用指南Yar 是一个轻量级, 高效的 RPC 框架, 它提供了一种简单方法来让 PHP 项目之间可以互相远程调用对方的本地方法。并且 Yar 也提供了并行调用的能力。可以支持同时调用多个远程服务的方法。Yar 它是一个 RPC 框架。所以,也具备 RPC 的特性。RPC 框架最终实...

你的 CURL 请求超时了吗?

背景:服务器上线了一个事件推送的功能。即主服务器系统产生的一些充值与下单的操作,会把这些动作消息推送给指定的活动服务器。我们采用的是 CURL 请求。但是,上线一段时间内发现消息吞吐很小,有时间还伴随请求超时。一、一个再正常不过的 PHP CURL 代码示例:<?php $data = ['code' =&...

什么是 EPEL?

背景:在了解 EPEL 之前,我们先来了解一下在 Linux 系统安装第三方库的痛楚。之前我在阿里云的 ECS 以及本地安装的 CentOS 7 系统中安装 Supervsior 时遇到了兼容问题。比如,阿里云 ECS CentOS 7 的 python 版本过低。以及 Python 的一些依赖的命令也没有。导致...

PHP 解说:我为何一定强制要求 PHP 代码写注释?

软件就是代码与文档的总和。我们在学习编程语言时,就被要求代码一定要写注释。但是,注释真的有必要吗?最近几年一直断断续续研读《代码整洁之道》此书。也从中汲取到很多有用的编程经验与思想。也让我把代码写得越来越有灵魂。此书当中专门有一个章节来讲了应该怎样注释,应该如何避免坏的注释。但是,有一点我觉得不好。或者说对我们中...

Golang 创建守护进程以及平滑重启

作为一名 PHP 开发老兵。使用过命令行对 nginx、PHP-FPM 进行启动/重启/停止等操作。印象非常深刻。让我用 C/C++ 开发这样的系统肯定是没精力搞了。然而,自从 Golang 进入了我的视野之后。我发现这一切都变得非常的容易。1)生成守护进程直接上代码:package main import (...

谈一谈 ID 发号器原理及期使用场景

最近在研究分布式架构方面的技术。看到 ID 发号器这个东西。早在四五年前,就看过一版讲 Java 发号器的东西。当时对这个发号器并不是特别理解。也不知道何种场景会使用到它。于是,今天再度回首这个东西。想看看它到底怎样影响我们的开发生活。一、数据库自增 ID在深入了解 ID 发号器之前,我们先来了解一下经常用到的数...

PHP 进阶:Composer 包开发

相信很多 PHP 开发者都使用过 Composer 来安装框架或第三方包。那么,如果我们想要编写这样一个 Composer 包应该怎样操作呢?我几年前写过一篇这样的文章。今天我就把它搬过来。有问题的地方大家直接留言给我就好。Composer 工具帮我们很好地管理了 PHP 依赖包的问题。但是,作为一名 PHPer...