鑒于最近跟小伙伴聊了很多PHP架構(gòu)發(fā)展方向的問(wèn)題,相關(guān)技術(shù)整理了一下,也順便規(guī)劃了一下自己的2019年。
一.常用的設(shè)計(jì)模式以及使用場(chǎng)景
以下是我用到過(guò)的 工廠,單例,策略,注冊(cè),適配,觀察者,原型,裝飾器,facade,loc,pipeline
二.閱讀一個(gè)框架源碼 例如:laravel
三.常用利器優(yōu)化
- mysql性能優(yōu)化
(1)理解底層btree機(jī)制
(2)理解sql執(zhí)行
(3)mysql索引優(yōu)化
(4)慢查詢(xún)與sql優(yōu)化
(5)mysql主從以及讀寫(xiě)分離
(6)mysql分表策略以及意義
(7)數(shù)據(jù)庫(kù)中間件
- redis優(yōu)化使用
(1)redis特點(diǎn)
(2)redis工作流程
(3)redis數(shù)據(jù)類(lèi)型以及適用場(chǎng)景
(4)redis內(nèi)存分配
(5)redis主從快照等 (6)redis批量操作優(yōu)化
- nginx性能
(1)nginx詳解
(2)nginx配置
(3)nginx機(jī)制
(4)nginx集群
(5)nginx原理
(6)nginx擴(kuò)展-可以基于openresty做擴(kuò)展開(kāi)發(fā)
- php性能(壓軸)
(1)是否優(yōu)雅的創(chuàng)建對(duì)象
(2)類(lèi)的設(shè)計(jì)陷阱
(3)程序設(shè)計(jì)規(guī)范
(4)php垃圾回收機(jī)制
(5)php-fpm相關(guān)
(6)php源碼
四.微服務(wù)
- swoole
(1)swoole基礎(chǔ)
(2)swoole進(jìn)程模型
(3)task異步任務(wù),任務(wù)遲
(4)server服務(wù)器
(5)數(shù)據(jù)庫(kù)連接池
(6)多進(jìn)程
(7)協(xié)程
- api接口
(1)api架構(gòu)設(shè)計(jì)
(2)api接口實(shí)現(xiàn)
(3)api接口擴(kuò)展能力
(4)api自動(dòng)生成文檔(可自己配置wiki平臺(tái))
(5)api性能調(diào)優(yōu)
- swoft微服務(wù)框架
(1)微服務(wù)設(shè)計(jì)模式
(2)路由網(wǎng)關(guān)
(3)客戶(hù)端負(fù)載均衡
(4)conful服務(wù)治理
(5)RPC
(6)微服務(wù)治理環(huán)節(jié)
(7)微服務(wù)監(jiān)控
(8)容災(zāi)
五.工程化
- linux 操作 各種命令操作
- python或shell腳本編寫(xiě)
- composer的使用
- git的使用 gitlab或gogs
六.基礎(chǔ)架構(gòu)
- 分布式架構(gòu)原理
(1)分布式初始化
(2)分布式架構(gòu)設(shè)計(jì)原則
(3)分布式通訊技術(shù)
(4)分布式協(xié)議
- 分布式緩存
(1)redis主從原理
(2)redis分布式集群部署
(3)redis數(shù)據(jù)一致性問(wèn)題
(4)redis讀寫(xiě)分離
(5)redis哨兵
(6)redis常見(jiàn)問(wèn)題以及優(yōu)化
(7)redis緩存擊穿以及雪崩預(yù)防策略
- 分布式rpc
(1)IO的概念
(2)多協(xié)議通訊
(3)并發(fā)處理
(4)rpc框架
- 消息中間件 redis,kafka等熟悉,以及判斷適用場(chǎng)景
七.壓力測(cè)試工具
ab,jmeter,LoadRunner,wrk 我使用比較多的是jmeter
八.其他語(yǔ)言的學(xué)習(xí)
golang,lua等
寄語(yǔ):世上無(wú)難事,只要肯攀登
|