<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[千门公子襄]]></title><description><![CDATA[人，无虎狼之牙，亦无狮象之力量，然能擒狼伏虎，训狮猎象。无他，唯智慧耳。]]></description><link>https://blog.youkuaiyun.com/DarkAngel1228</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; DarkAngel1228]]></copyright><item><title><![CDATA[中一.Nginx负载均衡分流实战]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/116915340</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/116915340</guid><author>DarkAngel1228</author><pubDate>Mon, 17 May 2021 09:36:33 +0800</pubDate><description><![CDATA[1

]]></description><category></category></item><item><title><![CDATA[PHP进阶架构师目录]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/116780608</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/116780608</guid><author>DarkAngel1228</author><pubDate>Fri, 14 May 2021 09:56:36 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[第3节 IOC与门面Facade]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105932069</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105932069</guid><author>DarkAngel1228</author><pubDate>Tue, 05 May 2020 15:07:52 +0800</pubDate><description><![CDATA[单例模式

私有的构造函数
静态成员变量来保持类的实例
访问这个实例的静态方法

class A ｛
	static public $instance = null;
	private function __construct() {
	
	}
	public static function getInstance() {
		if(!self::$instance){
			self::$ins...]]></description><category></category></item><item><title><![CDATA[第2章 配置文件解读]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105931333</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105931333</guid><author>DarkAngel1228</author><pubDate>Tue, 05 May 2020 14:06:40 +0800</pubDate><description><![CDATA[配置文件种类

ArrayAccess
提供像访问数组一样访问对象的能力的接口

]]></description><category></category></item><item><title><![CDATA[第1节 自动加载Loader深度分析]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105912277</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105912277</guid><author>DarkAngel1228</author><pubDate>Mon, 04 May 2020 09:11:28 +0800</pubDate><description><![CDATA[1.入口文件/public/index.php

2.加载框架引导文件/thinkphp/start.php

3. 引入基础文件 /thinkphp/bash.php

定义环境常量
载入Loader类(下文着重记录Loader）
加载环境变量配置文件.env
注册自动加载
注册错误和异常处理机制
加载惯例配置文件(就是框架自身的配置文件)

define('THINK_VERSION', '5...]]></description><category></category></item><item><title><![CDATA[第7章 分布式消息服务中间件]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105895708</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105895708</guid><author>DarkAngel1228</author><pubDate>Sat, 02 May 2020 22:06:35 +0800</pubDate><description><![CDATA[7.1 分布式消息服务中间件简介

队列模型
一组消费者和一组发布者通过一个队列联系起来，队列中的消息有序，中间件保证有且只有一个消费者收到消息。
发布者-订阅者模型
一组消费者和一组发布者通过一个主题（topic）联系起来。

7.2 分布式消息服务中间件的实现原理
Kafka是领英（LinkedIn）开源的一款非常优秀的、支持大批量消息的分布式消息服务中间件
7.2.1 消息模型


Kafk...]]></description><category></category></item><item><title><![CDATA[第6章 分布式服务调用中间件]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105893868</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105893868</guid><author>DarkAngel1228</author><pubDate>Sat, 02 May 2020 21:03:18 +0800</pubDate><description><![CDATA[远程过程调用（Remote Proredure Call, RPC）是一种非常传统的技术，通过它，可以跨进程、跨机器（操作系统可以相同，也可以不同）进程过程调用
6.1 分布式服务调用中间件简介

RPC的基础是序列化（marshalling）和反序列化（unmarshalling），因为一切RPC消息、参数、返回值和异常等都需要被序列化后才能跨节点传递。
gRPC是谷歌公司根据自己的原有产品Pr...]]></description><category></category></item><item><title><![CDATA[Redis分布式缓存]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105861675</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105861675</guid><author>DarkAngel1228</author><pubDate>Thu, 30 Apr 2020 14:48:36 +0800</pubDate><description><![CDATA[1.使用memcached作为本地缓存，使用Redis作为分布式缓存，还会涉及缓存一致性、缓存穿透/击穿、缓存雪崩、热点数据集中失效等问题。
2.引入反向代理实现负载均衡,还会涉及session共享、文件上传下载的问题
3.数据库读写分离,Mycat，它是数据库中间件，可通过它来组织数据库的分离读写和分库分表，客户端通过它来访问下层数据库，还会涉及数据同步，数据一致性的问题。
4.数据库按业务分库...]]></description><category></category></item><item><title><![CDATA[第5章 关系型数据库访问中间件]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105842159</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105842159</guid><author>DarkAngel1228</author><pubDate>Wed, 29 Apr 2020 16:58:53 +0800</pubDate><description><![CDATA[5.1 数据库访问中间件的形式


客户端程序库
如：Java Jar包，阿里巴巴的TDDL（Taobao Distributed Database Layer）[dɪˈstrɪbjuːtɪd] [ler]
优点是性能高、缺点是对应用有侵入



数据库代理服务器
如：阿里巴巴的Cobar、MyCat、Heisenberg
优点是对应用零侵入、缺点是性能低。


5.2 数据访问中间件的工作原理
...]]></description><category></category></item><item><title><![CDATA[第4章 分布式同步服务中间件]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105840209</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105840209</guid><author>DarkAngel1228</author><pubDate>Wed, 29 Apr 2020 15:03:34 +0800</pubDate><description><![CDATA[分布式同步服务就是提供分布式同步服务的组件，它对外提供的功能就如同一个单机的锁服务一样，当其内部是由多个结点组成的，而且节点之间通过某种分布式一致性协议（Paxos、Raft）来协调彼此的状态。如果其中一个节点崩溃了，其他节点就自动接管其功能，继续对外提供服务，好像什么都没有发生过一样。
4.1 分布式一致性协议

基于状态机的复制协议，又称主动复制协议（如Paxos、Raft）

集群中的每...]]></description><category></category></item><item><title><![CDATA[第3章 反向代理和负载均衡]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105840181</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105840181</guid><author>DarkAngel1228</author><pubDate>Wed, 29 Apr 2020 15:02:33 +0800</pubDate><description><![CDATA[3.1 反向代理

负载均衡：按一定策略转发web请求
服务加速：缓存静态内容、解压缩请求信息
请求鉴权：

3.1.1 Nginx

作为Apache Web服务器的反向代理使用。
Nginx是专为高并发情况而设计的，其设计思路是采用Linux/UNIX提供的非阻塞的事件处理机制（epoll）来处理请求。这样，有限的线程就可以处理数量巨大的请求。
Nginx的工作线程由多个请求共享，所以其每个...]]></description><category></category></item><item><title><![CDATA[第2章 Web框架的实现原理]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105840144</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105840144</guid><author>DarkAngel1228</author><pubDate>Wed, 29 Apr 2020 15:01:24 +0800</pubDate><description><![CDATA[CDN(Content Delivery Network)，即内容分发网络。用于缓存静态数据，减轻对Web服务器的压力
负载均衡器。分发请求
Web服务器集群
在线存储层：存储的是Web应用处理的实时数据（热数据）
离线存储层：数据落地


...]]></description><category></category></item><item><title><![CDATA[第1章 分布式系统概述]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105783294</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/105783294</guid><author>DarkAngel1228</author><pubDate>Mon, 27 Apr 2020 11:11:32 +0800</pubDate><description><![CDATA[第一部分 分布式系统概述

淘宝的管理海量小文件的分布式存储系统TFS
阿里巴巴开源的分布式调用框架Dubbo
阿里巴巴开源的数据库中间件Cobar
为了存储大量的网站索引，谷歌设计了GFS分布式文件存储系统和基于列存储的Bigtable NoSQL数据库系统
为了计算PageRank算法中的页面Rank值，谷歌又设计了MapReduce分布式计算系统
为了方便分布式系统中不同主机间的协调，谷歌又...]]></description><category></category></item><item><title><![CDATA[docker配置nginx+php各种坑]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103840055</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103840055</guid><author>DarkAngel1228</author><pubDate>Sun, 05 Jan 2020 08:51:39 +0800</pubDate><description><![CDATA[docker部署nginx+php的介绍很多，我也是安装上面的来部署，发现各种坑，在这给列举下，供大家参考。
1、安装好docker的nignx 和php
2、修改nginx.conf配置，加上php解析
其中
location ~ .php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME documentroot document...]]></description><category></category></item><item><title><![CDATA[docker 初识]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103820356</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103820356</guid><author>DarkAngel1228</author><pubDate>Fri, 03 Jan 2020 14:54:56 +0800</pubDate><description><![CDATA[由docker菜鸟教程整理笔记
我认为笔记的意义在于有的放矢，而不是像字典一样的详细。所以我后期的笔记风格都会以言简意赅为主，如果有什么不懂得地方，直接百度。
Docker 容器的使用
获取镜像
docker pull ubuntu
启动容器
docker run -it ubuntu /bin/bash
查看所有的容器
docker ps -a
启动已停止的容器
docker start 容器i...]]></description><category></category></item><item><title><![CDATA[常用状态码]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103606389</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103606389</guid><author>DarkAngel1228</author><pubDate>Wed, 18 Dec 2019 22:53:38 +0800</pubDate><description><![CDATA[200 OK：请求已正常处理。
301 Moved Permanently永久性重定向
302 Found：临时性重定向。
304 Not Modified：资源已找到，但未符合条件请求。
401 Unauthorized：未授权。
403 Forbidden：禁止访问
404 Not Found：找不到资源。
500 Internal Server Error ：服务器错误
502 Bad G...]]></description><category></category></item><item><title><![CDATA[Nginx面试]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103553540</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103553540</guid><author>DarkAngel1228</author><pubDate>Wed, 18 Dec 2019 22:22:00 +0800</pubDate><description><![CDATA[1.请解释一下什么是 Nginx ？


Nginx ，是一个 Web 服务器和反向代理服务器，用于 HTTP、HTTPS、SMTP、POP3 和 IMAP 协议。


Nginx 的主要功能如下：

作为 http server (代替 Apache ，对 PHP 需要 FastCGI 处理器支持)
FastCGI：Nginx 本身不支持 PHP 等语言，但是它可以通过 FastCGI 来将请求...]]></description><category></category></item><item><title><![CDATA[微信公众号的面试题]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103605252</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103605252</guid><author>DarkAngel1228</author><pubDate>Wed, 18 Dec 2019 21:30:39 +0800</pubDate><description><![CDATA[一.微信有哪九大高级接口

语音识别
客服接口
OAuth2.0网页授权
生成带参数二维码
获取用户地理位置
获取用户基本信息
获取关注者列表
用户分组接口
上传下载多媒体

二.OAuth2.0认证流程？与微信OAuth2.0认证流程有什么不同？

OAuth2.0处理流程

a.获得用户许可，得到授权码code
b.根据code获得access token
c.通过access token获得...]]></description><category></category></item><item><title><![CDATA[在项目中，你遇到过哪些问题，是如何解决的]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103548858</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103548858</guid><author>DarkAngel1228</author><pubDate>Wed, 18 Dec 2019 20:28:34 +0800</pubDate><description><![CDATA[1.客户投诉：接口报错
搭建sentry，实时业务监控，异常邮件告警。
2.如果是代码问题：

断点
思考

百度
google


试验
优化
提测

3.如果是业务逻辑问题

暂停
找PM
核对
再核对

4.没有需求文档、没有业务流程图、没有数据字典，没有注释

跑一条业务
跟踪数据流向
分析代码用途
整理业务逻辑
整理数据走向，表间关系

至于解决问题，下班后多看书，遇到问题，知道去哪个方...]]></description><category></category></item><item><title><![CDATA[RESTful API接口设计标准及规范]]></title><link>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103549728</link><guid>https://blog.youkuaiyun.com/DarkAngel1228/article/details/103549728</guid><author>DarkAngel1228</author><pubDate>Wed, 18 Dec 2019 20:28:22 +0800</pubDate><description><![CDATA[URI规范
不用大写；
用中杠-不用下杠_；
参数列表要encode；
URI中的名词表示资源集合，使用复数形式。
方法

GET:查询
POST：创建单个资源
PUT:全量更新
PATCH/pætʃ/ ：部分更新
DELETE：删除


...]]></description><category></category></item></channel></rss>