鉴于最近跟小伙伴聊了很多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. 基于Django的独立运行脚本开发

    1.在Django框架下工作时间长了,会对Django的技术设施产生依赖,比如其方便的ORM,如果写基于Django的独立运行脚本,主要在脚本前面加上以下代码: import sys,os,djang ...

  2. redis资源未释放引发的问题

    一.redis资源未释放的起因: N年前,在修改一个古老程序时,不小心把redis释放的这块给干掉了, if (jedis != null) { if (!isInProcess) { jedis.d ...

  3. UML小白入门基础教程

    面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™,统一建模语言),这篇课程的目的 ...

  4. php 微信JS-SDK封装类

    JSSDK使用步骤: 步骤一:绑定域名 步骤二:引入JS文件 步骤三:通过config接口注入权限验证配置 步骤四:通过ready接口处理成功验证 步骤五:通过error接口处理失败验证 具体步骤方法 ...

  5. 用js来实现那些数据结构—目录

    首先,有一点要声明,下面所有文章的所有内容的代码,都不是我一个人独立完成的,它们来自于一本叫做<学习JavaScript数据结构和算法>(第二版),人民邮电出版社出版的这本书.github ...

  6. cocos2dx中的坐标系统

    一. (1)OpenGL坐标系 Cocos2D-x以OpenGL和OpenGL ES为基础,所以自然支持OpenGL坐标系.该坐标系原点在屏幕左下角,x轴向右,y轴向上. (2)屏幕坐标系 屏幕坐标系 ...

  7. ccos2d-x 学习

    渲染驱动方式,事件驱动方式 this->addChild(pSprite, 0); 的第二个参数(int zOrder)表示要添加到this类对象中的顺序.是由里向外的方向.值越大表示越在外面. ...

  8. TensorFlow-谷歌深度学习库 命令行参数

    程序的入口: tf.app.run tf.app.run( main=None, argv=None ) 运行程序,可以提供'main'函数以及函数参数列表.处理flag解析然后执行main函数. 什 ...

  9. Spring源码阅读笔记

    前言 作为一个Java开发者,工作了几年后,越发觉力有点不从心了,技术的世界实在是太过于辽阔了,接触的东西越多,越感到前所未有的恐慌. 每天捣鼓这个捣鼓那个,结果回过头来,才发现这个也不通,那个也不精 ...

  10. 微信小游戏开发Canvas资源汇总

    Demo: 微信小程序demo组件:股票分时图 微信小程序小组件:仿直播点赞气泡效果,基于Canvas 优质demo推荐:二维码生成器:使用canvas与纯JS版二维码生成 微信小程序学习用完整dem ...