资源描述:
《Scaling PHP in the Real World_ Presentation.pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、ScalingPHPintherealworldDustinWhittle-@dustinwhittlePHPISUSEDBYTHELIKESOFFACEBOOK,YAHOO,ZYNGA,TUMBLR,ETSY,ANDWIKIPEDIA.HOWDOTHELARGESTINTERNETCOMPANIESSCALEPHPTOMEETTHEIRDEMAND?!JOINTHISSESSIONANDFINDOUTHOWTOUSETHELATESTTOOLSINPHPFORDEVELOPINGHIGHPERFORMANCEAPPLICATIONS.WE’LLTAKEALOOKATCOM
2、MONTECHNIQUESFORSCALINGPHPAPPLICATIONSANDBESTPRACTICESFORPROFILINGANDOPTIMIZINGPERFORMANCE.AFTERTHISSESSION,YOU’LLLEAVEPREPAREDTOTACKLEYOURNEXTENTERPRISEPHPPROJECT.AGENDA•Whyperformancematters?•TheproblemswithPHP•Bestpracticedesigns•DistributeddatacacheswithRedisandMemcached•Doingworkinthe
3、backgroundwithqueues•HttpcachingandareverseproxywithVarnish•Usingtherighttoolforthejob•Toolsofthetrade•Xdebug+WebGrind•XHProf+XHProfGUI•AppDynamics•GooglePageSpeed•ArchitecturenotapplicationsDUSTINWHITTLE•dustinwhittle.com•@dustinwhittle•Technologist,Pilot,Skier,Diver,Sailor,GolferWHATIHAV
4、EWORKEDON•DeveloperEvangelist@•Consultant&Trainer@•DeveloperEvangelist@DIDYOUKNOWFACEBOOK,YAHOO,ZYNGA,TUMBLR,ETSY,ANDWIKIPEDIAWEREALLBUILTONPHP?WHYDOESPERFORMANCEMATTER?WHENMOZILLASHAVED2.2SECONDSOFFTHEIRLANDINGPAGE,FIREFOXDOWNLOADSINCREASED15.4%MAKINGBARACKOBAMA’SWEBSITE60%FASTERINCREASED
5、DONATIONCONVERSIONSBY14%AMAZONANDWALMARTINCREASEDREVENUE1%FOREVERY100MSOFIMPROVEMENTPERFORMANCEDIRECTLYIMPACTSTHEBOTTOMLINEPHPISSLOWERTHANJAVA,C++,ERLANG,SCALA,ANDGO!HTTP://PHPSADNESS.COM/...ANDPHPHASSOMESERIOUSDESIGNISSUESANDINCONSISTENCIES!...BUTTHEREAREWAYSTOSCALETOHANDLEHIGHTRAFFICAPPL
6、ICATIONSPHPISNOTYOURPROBLEM!WHATVERSIONOFPHPDOYOURUN?UPGRADEYOURPHPENVIRONMENTTO2014!NGINX+PHP-FPMUSEANOPCODECACHE!PHP5.5HASZENDOPCACHEAPCUSEAUTOLOADINGANDPSR-0SYMFONY2CLASSLOADERCOMPONENTWITHAPCCACHINGSCALINGBEYONDASINGLESERVERINPHPOPTIMIZEYOURSESSIONS!THEDEFAULTINPHPISTOPERSISTSESSIONSTO
7、DISKITISBETTERTOSTORESESSIONSINADATABASEEVENBETTERISTOSTOREINADATABASEWITHASHAREDCACHEINFRONTPECLINSTALLMEMCACHEDsession.save_handler=memcachedsession.save_path="10.0.0.10:11211,10.0.0.11:11211,10.0.0.12:11211"memcached.sess_prefix=“session.”memcached.sess_cons