PHP架构师进阶路线
进阶1:常见设计模式与主流框架
常常会在各大招聘平台看到对PHP架构师的招聘需求都是:了解PHP开发规范、项目设计技巧熟练掌握框架的核心原理;了解Redis、Memcache的应用场景,了解MySQL数据库架构优化;熟练使用Linux,并熟悉常见软件编译(如MySQL/Nginx/Apache)和优化;对00 A\OOD\OOP\AOP编程思想有一定理解;熟悉常见的设计模式,能在项目中熟练运用,阅读框架底层源码等等。因此学习PHP技术体系,设计模式,流行的框架都是必须的,下面是进阶路线规划:
设计模式
- Factory工厂模式
- Single单例模式
- 适配器模式
- Observer观察者模式
- 装饰器模式
- I0C(控制反转)和DI(依赖注入)
Laravel框架
- Laravel6核心技术架构分析
- 路由原理分析
- 中间件源码分析
- Blade模板源码分析
- Service机制源码分析
- 系统组件分析
- 应用组件分析
Yii框架
- Yii2技术架构
- 路由分析
- 模型分析
- 控制器分析
- RESTful Web服务
- 第三方组件使用
TP框架
- ThinkPHP6技术架构
- 源码分析
- 路由底层原理分析
- 内核源码分析
- RPC接口实现
- Facade分析
进阶2:微服务架构与性能优化
业务体系越来越复杂,Swoole协程编程,PHP并发编程、MySQL底层优化是PHP架构师进阶的必经之路,PHP性能优化和微服务架构相关的技术有哪些呢?Tars分布式RPC框架、Swoft微服务框架、服务器性能优化、算法与数据结构等等。大厂招聘要求一般都是熟悉负载均衡、安全防御等技术熟练主流数据库MySQL/NoSQL,具备优秀的数据库建模能力;熟悉微服务架构设计,并对其进行微服务改造优先;熟悉并发编程模型、Linux系统、ElasticSearch的使 用等等。这一阶段的学习规划如下:
数据库优化
- 理解MySQL底层
- BTREE机制
- SQL执行计划深入详解
- MySQL索引优化详解
- 慢查询分析与SQL语句优化
- MySQL主从复制及读写分离
- MySQL分库分表
- 数据库中间件MyCAT
- 切分策略
PHP优化
- 优雅的创建对象
- 注意对象的通用方法
- 类的设计陷阱
- 程序设计通用规范
- PHP垃圾回收处理机制
- PHP内核探索
Redis高级
- Redis特点
- Redis工作流程
- Redis数据类型与应用
- 场景分析
- Redis操作
- Redis优化
- Redis内存分配
Nginx优化
- Nginx运行机制
- Nginx参数认识及调优
- Nginx反向代理及负载
- 均衡实战
- 集群与负载均衡
- 基准测试
Swoole
- Swoole开发基础
- Swoole进程模型
- Task异步任务、任务池
- Server服务器
- Swoole实战
- WebSocket实战
- RPC分布式接口
- 数据库连接池
- 协程编程
- Swoole多进程
TARS分布式架构
- Tars环境部署配置
- Tars服务部署
- Tars技术架构
- Tars服务开发
API接口平台
- API架构设计
- API接口实现
- API接口能力扩展
- API文档自动生成
- API性能优化
微服务框架业
- 微服务设计模式
- 路由网关详解
- 客户端负责均衡原理架
- CONSUL服务发现
- 服务熔断以及服务降级分
- 配置中心服务等。
进阶3:工程化与分布式架构
任何脱离细节的PPT架构师都是耍流氓,向上能运筹帷幄,向下能解决一线开发问题,PHP架构师需深入工程化、高并发,高可用,海量数据,没有分布式的架构知识肯定是玩不转的,需要熟悉Linux操作系统与调优,具备ShelI脚本编程能力;了解持续集成、持续部署、防范;精通Git、SVN等常见版本管理工具并能应对版本冲突;有较强业务需求建模能力和业务架构设计能力,能为团队引入创新的技术、创新的解决方案,用创新的思路解决问题精通性能优化。
Linux操作
- 常用Linux命令、连接文件、挂载
- L NAMP环境编译安装配置
- Shell脚本编程
- Shell管道机制
- Shell通配符
Composer
- Composer安装
- 命令空间
- PSR开发规范
- Composer自动加载原理分析
- 自主开发Composer组件
GIT/SVN
- GIT分布式特点与SVN区别
- GIT/SVN安装与配置
- GIT分支管理
- GIT仓库配置
- GIT冲突解决
Docker与单元测试
- 单元测试
- Docker构建LNAMP环境
- Docker网站组成、路由互联
- 基于Swarm构建Docker集群
- JenKins自动化部署
- JenKins集成
- Git+JenKins发布PHP项目
分布式缓存
- Redis主从复制详解
- Redis分布式集群部署
- Redis数据同步一致性
- 问题解决方案
- Redis读写分离实战
- Redis哨兵机制
- 基于Redis实现分布式锁
- Redis批量查询优化
- Redis常见问题及性能优化思路
- Redis缓存击穿、缓存
- 雪崩预防策略
消息中间件
- ActiveMQ模型原理详解及应用案例
- ActiveMQ与PHP集成
- Kafka消息处理原理剖析
- Kafka副本机制及选举原理
- RabbitMQ消息分发原理
- RabbitMQ消息路由及消息确认
高并发分流
- Nginx优化深入剖析
- 分布式全局ID生成方案
- Session共享及单点登录解决方案
- 分布式定时任务调度
- 协程编程
亿级云平台架构
- ElasticSearch
- 云平台三次架构模式
- 搜索模块
- 底层服务封装
并发编程
- I0基本概念
- 多协议通信
- 无锁化编程及并发处理
- 多协议RPC框架