php架构之路
鉴于最近跟小伙伴聊了很多PHP架构发展方向的问题,相关技术整理了一下,也顺便规划了一下自己的2019年。
一.常用的设计模式以及使用场景
以下是我用到过的 工厂,单例,策略,注册,适配,观察者,原型,装饰器,facade,loc,pipeline
二.阅读一个框架源码 例如:laravel
三.常用利器优化
- mysql性能优化
(1)理解底层btree机制
(2)理解sql执行
(3)mysql索引优化
(4)慢查询与sql优化
(5)mysql主从以及读写分离
(6)mysql分表策略以及意义
(7)数据库中间件 - redis优化使用
(1)redis特点
(2)redis工作流程
(3)redis数据类型以及适用场景
(4)redis内存分配
(5)redis主从快照等
(6)redis批量操作优化 - nginx性能
(1)nginx详解
(2)nginx配置
(3)nginx机制
(4)nginx集群
(5)nginx原理
(6)nginx扩展-可以基于openresty做扩展开发 - php性能(压轴)
(1)是否优雅的创建对象
(2)类的设计陷阱
(3)程序设计规范
(4)php垃圾回收机制
(5)php-fpm相关
(6)php源码
四.微服务
- swoole
(1)swoole基础
(2)swoole进程模型
(3)task异步任务,任务迟
(4)server服务器
(5)数据库连接池
(6)多进程
(7)协程 - api接口
(1)api架构设计
(2)api接口实现
(3)api接口扩展能力
(4)api自动生成文档(可自己配置wiki平台)
(5)api性能调优 - swoft微服务框架
(1)微服务设计模式
(2)路由网关
(3)客户端负载均衡
(4)conful服务治理
(5)RPC
(6)微服务治理环节
(7)微服务监控
(8)容灾
五.工程化
- linux 操作 各种命令操作
- python或shell脚本编写
- composer的使用
- git的使用 gitlab或gogs
六.基础架构
- 分布式架构原理
(1)分布式初始化
(2)分布式架构设计原则
(3)分布式通讯技术
(4)分布式协议 - 分布式缓存
(1)redis主从原理
(2)redis分布式集群部署
(3)redis数据一致性问题
(4)redis读写分离
(5)redis哨兵
(6)redis常见问题以及优化
(7)redis缓存击穿以及雪崩预防策略 - 分布式rpc
(1)IO的概念
(2)多协议通讯
(3)并发处理
(4)rpc框架 - 消息中间件 redis,kafka等熟悉,以及判断适用场景
七.压力测试工具
ab,jmeter,LoadRunner,wrk 我使用比较多的是jmeter
八.其他语言的学习
golang,lua等
寄语:世上无难事,只要肯攀登
php架构之路的更多相关文章
- 架构之路(九)Session Per Request
前面的两篇反应很差:没评论没赞.很伤心啊,为什么呢?搞得我好长一段时间都没更新了——呵呵,好吧,我承认,这只是我的借口.不过,还是希望大家多给反馈.没有反馈,我就只能猜了:前面两篇是不是写得太“粗”了 ...
- 第四章 电商云化,4.1 17.5W秒级交易峰值下的混合云弹性架构之路(作者:唐三 乐竹 锐晟 潇谦)
4.1 17.5W秒级交易峰值下的混合云弹性架构之路 前言 每年的双11都是一个全球狂欢的节日,随着每年交易逐年创造奇迹的背后,按照传统的方式,我们的成本也在逐年上升.双11当天的秒级交易峰值平时的近 ...
- 架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)
[前言] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(一)>中小编简单的讲解了Nginx的原理!俗话说:光说不练假把式.接下来,小编就和大家一起来做个小Demo来体会一下N ...
- 架构之路:nginx与IIS服务器搭建集群实现负载均衡(三)
参考网址:https://blog.csdn.net/zhanghan18333611647/article/details/50811980 [前言] 在<架构之路:nginx与IIS服务器搭 ...
- [转帖]java架构之路-(面试篇)JVM虚拟机面试大全
java架构之路-(面试篇)JVM虚拟机面试大全 https://www.cnblogs.com/cxiaocai/p/11634918.html 下文连接比较多啊,都是我过整理的博客,很多答案都 ...
- 架构之路:nginx与IIS服务器搭建集群实现负载均衡(一)
最近亮亮在研究IIS的负载均衡!本人由于初出茅庐,防骗意识薄弱,一不小心被亮亮坑上了IIS负载均衡之路(亮亮是真黑哈!).前车之鉴啊!小伙伴们要小心.不过既上了贼船,便决定一条道走到黑.于是乎从大前天 ...
- Java之架构(0) - 架构之路
软件架构作为一个概念,体现在技术和业务两个方面. 从技术角度来说:软件架构随着技术的革新不断地更新其内容,软件架构建立于当前技术和一些基本原则的基础之上. 先说一些基本原则: 分层原则:分层是为了降低 ...
- 架构之路(八)从CurrentUser说起
CurrentUser,也就是当前用户,这是我们系统中大量使用的一个概念. 确认当前用户 当然,我们利用的是cookie:用户的ID存放在cookie中,服务器端通过cookie中的Id,查找数据库, ...
- 【架构之路之WCF全析(一)】--服务协定及消息模式
上周微软开公布会说.NET支持全然跨平台和并开放Core源代码的新闻,让我们顿时感到.NET要迎来它的春天.尽管早在几年前.NET就能开发Android和IOS,可是这次的跨平台把Linux都放到了微 ...
- 《浅谈架构之路:单点登录 SSO》
前言:SSO 单点登录 “半吊子”的全栈工程师又来了,技术类的文章才发表了两篇,本来想先将主攻的几个系列都开个头(Nodejs.Java.前端.架构.全栈等等),无奈博客起步太晚,写博文的时间又没有很 ...
随机推荐
- Invoke-ASCmd 部署SSAS database
Install-Module -Name SqlServer -RequiredVersion 21.0.17099 -AllowClobberInvoke-ASCmd -Server 10.162. ...
- .net core使用Ku.Core.Extensions.Layui实现layui表单渲染
演示网站地址:http://layui.kulend.com/项目地址:https://github.com/kulend/Ku.Core.Extensions/tree/master/Ku.Core ...
- CSS样式渐变代码,兼容IE8
background: -webkit-linear-gradient(top,#ffffff,#f5f5f5); background: -moz-linear-gradient(top,#ffff ...
- python笔记:#001#python简介
认识 Python 人生苦短,我用 Python -- Life is short, you need Python 目标 Python 的起源 为什么要用 Python? Python 的特点 Py ...
- linux CentOS6.5 yum安装mysql 5.6
1.新开的云服务器,需要检测系统是否自带安装mysql # yum list installed | grep mysql 2.如果发现有系统自带mysql,果断这么干 # yum -y remove ...
- CSS学习笔记1:基础知识
CSS规则由两部分组成,选择器和声明 选择器:标签,告诉浏览器哪些标签需要用到这个样式 声明:样式的内容,由一或多对属性:值以:隔开组成,由{}包围,需要多个选择器时以逗号隔开 ...
- python 整理数据中的图片
import shutil import time import pymysql conn=pymysql.connect(host="222",user="root&q ...
- 简单记录numpy库的某些基本功能
这里介绍python的一个库,numpy库,这个库是机器学习,数据分析最经常用到的库之一,也是利用python做数据必须用到的一个库,入门机器学习学的第一个python库就是它了. 先对其导入到pyt ...
- 一文读懂阻塞、非阻塞、同步、异步IO
介绍 在谈及网络IO的时候总避不开阻塞.非阻塞.同步.异步.IO多路复用.select.poll.epoll等这几个词语.在面试的时候也会被经常问到这几个的区别.本文就来讲一下这几个词语的含义.区别以 ...
- JSON Patch
1.前言 可以这么说的是,任何一种非强制性约束同时也没有"标杆"工具支持的开发风格或协议(仅靠文档是远远不够的),最终的实现上都会被程序员冠上"务实"的名头,而 ...