鉴于最近跟小伙伴聊了很多PHP架构发展方向的问题,相关技术整理了一下,也顺便规划了一下自己的2019年。

.常用的设计模式以及使用场景

以下是我用到过的   工厂,单例,策略,注册,适配,观察者,原型,装饰器,facade,loc,pipeline

.阅读一个框架源码 例如:laravel

.常用利器优化

  1. mysql性能优化

    (1)理解底层btree机制
    (2)理解sql执行
    (3)mysql索引优化
    (4)慢查询与sql优化
    (5)mysql主从以及读写分离
    (6)mysql分表策略以及意义
    (7)数据库中间件
  2. redis优化使用
    (1)redis特点
    (2)redis工作流程
    (3)redis数据类型以及适用场景
    (4)redis内存分配
    (5)redis主从快照等
    (6)redis批量操作优化

      

  3. nginx性能
    (1)nginx详解
    (2)nginx配置
    (3)nginx机制
    (4)nginx集群
    (5)nginx原理
    (6)nginx扩展-可以基于openresty做扩展开发 

      

  4. php性能(压轴)
    (1)是否优雅的创建对象
    (2)类的设计陷阱
    (3)程序设计规范
    (4)php垃圾回收机制
    (5)php-fpm相关
    (6)php源码  

四.微服务

  1. swoole

    (1)swoole基础
    (2)swoole进程模型
    (3)task异步任务,任务迟
    (4)server服务器
    (5)数据库连接池
    (6)多进程
    (7)协程

      

  2. api接口
    (1)api架构设计
    (2)api接口实现
    (3)api接口扩展能力
    (4)api自动生成文档(可自己配置wiki平台)
    (5)api性能调优

      

  3. swoft微服务框架
    (1)微服务设计模式
    (2)路由网关
    (3)客户端负载均衡
    (4)conful服务治理
    (5)RPC
    (6)微服务治理环节
    (7)微服务监控
    (8)容灾

      

五.工程化

  1. linux 操作 各种命令操作
  2. python或shell脚本编写
  3. composer的使用
  4. git的使用  gitlab或gogs

六.基础架构

  1. 分布式架构原理

    (1)分布式初始化
    (2)分布式架构设计原则
    (3)分布式通讯技术
    (4)分布式协议

      

  2. 分布式缓存
    (1)redis主从原理
    (2)redis分布式集群部署
    (3)redis数据一致性问题
    (4)redis读写分离
    (5)redis哨兵
    (6)redis常见问题以及优化
    (7)redis缓存击穿以及雪崩预防策略

      

  3. 分布式rpc
    (1)IO的概念
    (2)多协议通讯
    (3)并发处理
    (4)rpc框架

      

  4. 消息中间件 redis,kafka等熟悉,以及判断适用场景

七.压力测试工具

ab,jmeter,LoadRunner,wrk  我使用比较多的是jmeter

八.其他语言的学习

golang,lua等

寄语:世上无难事,只要肯攀登

php架构之路的更多相关文章

  1. 架构之路(九)Session Per Request

    前面的两篇反应很差:没评论没赞.很伤心啊,为什么呢?搞得我好长一段时间都没更新了——呵呵,好吧,我承认,这只是我的借口.不过,还是希望大家多给反馈.没有反馈,我就只能猜了:前面两篇是不是写得太“粗”了 ...

  2. 第四章 电商云化,4.1 17.5W秒级交易峰值下的混合云弹性架构之路(作者:唐三 乐竹 锐晟 潇谦)

    4.1 17.5W秒级交易峰值下的混合云弹性架构之路 前言 每年的双11都是一个全球狂欢的节日,随着每年交易逐年创造奇迹的背后,按照传统的方式,我们的成本也在逐年上升.双11当天的秒级交易峰值平时的近 ...

  3. 架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)

    [前言] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(一)>中小编简单的讲解了Nginx的原理!俗话说:光说不练假把式.接下来,小编就和大家一起来做个小Demo来体会一下N ...

  4. 架构之路:nginx与IIS服务器搭建集群实现负载均衡(三)

    参考网址:https://blog.csdn.net/zhanghan18333611647/article/details/50811980 [前言] 在<架构之路:nginx与IIS服务器搭 ...

  5. [转帖]java架构之路-(面试篇)JVM虚拟机面试大全

    java架构之路-(面试篇)JVM虚拟机面试大全 https://www.cnblogs.com/cxiaocai/p/11634918.html   下文连接比较多啊,都是我过整理的博客,很多答案都 ...

  6. 架构之路:nginx与IIS服务器搭建集群实现负载均衡(一)

    最近亮亮在研究IIS的负载均衡!本人由于初出茅庐,防骗意识薄弱,一不小心被亮亮坑上了IIS负载均衡之路(亮亮是真黑哈!).前车之鉴啊!小伙伴们要小心.不过既上了贼船,便决定一条道走到黑.于是乎从大前天 ...

  7. Java之架构(0) - 架构之路

    软件架构作为一个概念,体现在技术和业务两个方面. 从技术角度来说:软件架构随着技术的革新不断地更新其内容,软件架构建立于当前技术和一些基本原则的基础之上. 先说一些基本原则: 分层原则:分层是为了降低 ...

  8. 架构之路(八)从CurrentUser说起

    CurrentUser,也就是当前用户,这是我们系统中大量使用的一个概念. 确认当前用户 当然,我们利用的是cookie:用户的ID存放在cookie中,服务器端通过cookie中的Id,查找数据库, ...

  9. 【架构之路之WCF全析(一)】--服务协定及消息模式

    上周微软开公布会说.NET支持全然跨平台和并开放Core源代码的新闻,让我们顿时感到.NET要迎来它的春天.尽管早在几年前.NET就能开发Android和IOS,可是这次的跨平台把Linux都放到了微 ...

  10. 《浅谈架构之路:单点登录 SSO》

    前言:SSO 单点登录 “半吊子”的全栈工程师又来了,技术类的文章才发表了两篇,本来想先将主攻的几个系列都开个头(Nodejs.Java.前端.架构.全栈等等),无奈博客起步太晚,写博文的时间又没有很 ...

随机推荐

  1. Zookeeper简介和安装(二)

    一.简介: Zookeeper是一个分布式协调服务,提供的服务如下: 命名服务:类似于DNS,但仅对于节点 配置管理:服务配置信息的管理 集群管理:Dubbo使用Zookeeper实现服务治理 分布式 ...

  2. 3D Lut 电影级调色算法 附完整C代码

    在前面的文章,我提到过VSCO Cam 的胶片滤镜算法实现是3d lut. 那么3d lut  到底是个什么东西呢? 或者说它是用来做什么的? 长话短说,3d lut(全称 : 3D Lookup t ...

  3. 部署Dubbo监控中心

    1.部署监控中心: [root@localhost ~]# cp dubbo-admin-2.5.4.war apache-tomcat-7.0.47/webapps/dubbo-admin.war ...

  4. IntelliJ IDEA maven 构建简单springmvc项目

    环境: apache-tomcat-8.5.15 jdk1.8.0_172 IDEA 建立一个maven-webapp项目:Create New Project 后点击next 然后next 可以选择 ...

  5. Git分支合并冲突解决(续)

    接Git分支合并冲突解决,在使用rebase合并冲突情况下,如果不小心,执行完add后执行了commit,此时本地仓库HEAD处于游离态(即HEAD指向未知的分支),如何解决? 解决方法 (1)此时, ...

  6. Vue.js——60分钟组件快速入门

    一.组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HT ...

  7. Lucene入门简介

    一  Lucene产生的背景 数据库中的搜索很容易实现,通常都是使用sql语句进行查询,而且能很快的得到查询结果. 为什么数据库搜索很容易? 因为数据库中的数据存储是有规律的,有行有列而且数据格式.数 ...

  8. Linux集群服务 LVS

    linux虚拟服务器(LVS)项目在linux操作系统上提供了最常见的负载均衡软件. 集群定义: 集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能.可靠性 ...

  9. [ 搭建Redis本地服务器实践系列三 ] :图解Redis客户端工具连接Redis服务器

    上一章 [ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis  介绍了Redis的初始化脚本文件及启动配置文件,并图解如何以服务的形式来启动.终止Redis服务,可以说我们的 ...

  10. 关于Java泛型"擦除"的一点思考

    头次写博客,想说的东西不难,关于泛型的疑问,是前一阵在学习jackson中遇到的. 下面就把我所想到的.遇到的,分享出来. 泛型是JDK1.5后的一个特性,是一个参数类型的应用,可以将这个参数声明在类 ...