一、搭建環(huán)境 二、PHP7新特性 A.OOP特性 1.類型聲明
2.命名空間與use關鍵字批量聲明
3.匿名類
4.Throwable接口
B.新的操作符 1.太空船操作符(<=>)
2.null合并運算符(??)
3.統(tǒng)一變量語法 C.其他特性和變更 1.常量數(shù)組:const STORES = ['en’, ’fr’, 'ar’]; php7:define(’STORES’,['en’, ’fr’, 'ar’]); 2.Switch中的多個default默認值,在php7中會產(chǎn)生Fatal級別的錯誤 3.Session_start函數(shù)中的選項數(shù)組:可以在調(diào)用session_start([...])傳遞參數(shù)選項數(shù)組,這些設置信息將覆蓋php.ini中的session配置 4.Unserialize函數(shù)引入過濾器 三、PHP7應用性能提升 A.HTTP Server優(yōu)化 1.緩存靜態(tài)文件 2.HTTP持久鏈接:表示一條TCP/IP鏈接上承載著多個上下行請求 3.GZIP壓縮 4.PHP獨立部署服務 5.關閉不用的模塊 B.內(nèi)容分發(fā)網(wǎng)絡(CDN) 1.CDN網(wǎng)絡通常服務于媒體文件 C.CSS與JavaScript優(yōu)化 1.合并:將所有CSS、JS文件進行合并 2.縮?。簞h除空行、注釋和額外空格 3.Minify:是一組完全使用PHP編寫的庫,支持CSS、JavaScript文件的合并與縮小,代碼是面向?qū)ο蠛兔臻g的 4.Grunt:是一個JavaScript任務運行器,能夠?qū)⒛承┲貜偷娜蝿兆詣踊?,避免反復工?/p> 5..全頁緩存 6.Varnish:開源的Web應用程序加速器 D.基礎設施 1.Web服務器 2.數(shù)據(jù)庫服務器 3.負載均衡(LB)
四、提升數(shù)據(jù)庫性能 A.MySQL 1.查詢緩存
2.存儲引擎
3.Percona Server - MySQL的fork
4.MySQL性能監(jiān)控工具
B.Redis鍵值緩存存儲 C.Memcached鍵值緩存存儲 五、調(diào)試和分析 A.Xdebug 六、PHP應用的壓力/負載測試 A.Apache JMeter B.ApacheBench(ab) C.Siege 七、PHP編程最佳實踐 A.代碼風格 1.類名中每個單詞的首字母必須大寫,左大括號應該在類名后新起一行,右大括號應該在類結(jié)束后新起一行 2.類的方法和函數(shù)命名應該是駝峰式的,參數(shù)和緊跟著的逗號之間不應有空格 3.命名空間的聲明之后應該空一行 4.Visibility類的所有屬性都應該明確指出其可見性并且屬性名應該是駝峰式的 5.要是有abstract關鍵字的話,則一定是在class關鍵字之前 的,final關鍵字則應該在方法可見性之前,static關鍵字是在方法可見性之后的 6.所有PHP關鍵字都應該小寫,包括true和false,常量應該都大寫 7.對于所有控制結(jié)構(gòu)語句,控制結(jié)構(gòu)關鍵詞后都應該有空格,表達 式和外面的括號之間不應該有空格, B.測試驅(qū)動開發(fā) 1.PHPUnit C.部署和持續(xù)集成(CI) 1.PHPCI 2.Jenkins 3.Travis CI https://github.com/zhangyue0503/php/tree/master/learningphp7highperformance/2 |
|
來自: 硬核項目經(jīng)理 > 《待分類》