作为一个php程序员,想要提高阶段,这些你需要学!

总体目标:可以随时构建好LNMP自然环境,迅速进行常规配置;可以查证处理绝大多数碰到的开发和网上自然环境的难题;可以单独担负中小型系统软件的架构和开发工作中;可以在大型的系統中担负某一中小型控制模块的开发工作中;
1.Linux:
在***阶段的基本上边,可以清晰的应用Shell脚本制作来实现许多自动化技术的工作中;awk/sed/perl也实际操作的非常好,可以进行许多文本检索和数据分析等工作中;基本上可以安裝绝大多数非独特的Linux程序流程(包含各种各样库、包、第三方依靠这些,例如MongoDB/Redis/Sphinx/Luncene/SVN这类的);掌握主要的Linux服务项目,了解怎么查看Linux的性能指标值数据信息,了解基本上的Linux下边的难题追踪等。
2.Nginx:
在***阶段的基本上边,掌握繁杂一些的Nginx配置;包含多核配置、events、proxy_pass,sendfile/tcp_*配置,了解请求超时等有关配置和性能危害;知道nginx除开webserver,还可以担负服务器代理、反方向静态数据网络服务器等配置;了解基本上的nginx配置调优;了解怎样配置管理权限、编译程序一个nginx拓展到nginx;了解基本上的nginx运作原理(master/worker机制,epoll),了解为何nginx性能比apache性能好等专业知识;
3.MySQL/MongoDB:
在***阶段的基本上边,在MySQL开发层面,把握许多小窍门,包含常规SQL提升(groupby/orderby/rand提升等);除开可以构建MySQL,还可以热冷备份数据MySQL数据信息,还了解危害innodb/myisam性能的配置选择项(例如key_buffer/query_cache/sort_buffer/innodb_buffer_pool_size/innodb_flush_log_at_trx_commit等),也明白这种选择项配置变成是多少值适合;此外也知道一些特别的配置选择项,例如了解如何搭建mysql主从关系同歩的自然环境,了解每个binlog_format的差别;了解MySQL的性能查证,包含slow_log/explain等,还可以了解基本上的数据库索引创建解决等专业知识;原理层面掌握主要的MySQL的构架(Server+储存模块),了解基本上的InnoDB/MyISAM数据库索引存储结构和不一样(聚簇索引,B树);了解基本上的InnoDB事务管理机制;掌握绝大多数MySQL异常现象的正确处理计划方案(或是了解哪里寻找解决计划方案)。标准可以的状况,提议了解一下NoSQL的意味着MongoDB数据库查询,顺带比照跟MySQL的区别,朋友可以在适宜的应用领域安全性慎重的应用MongoDB,了解基本上的PHP与MongoDB的融合开发。
4.Redis/Memcached:
在绝大多数中小型系统软件里边一定会牵涉到缓存文件解决,因此 一定要掌握主要的缓存文件;了解Memcached和Redis的差异和应用领域,可以单独安裝Redis/Memcached,掌握Memcahed的一些基本上性能和限定,例如较大的value值,了解PHP跟她们的应用融合;Redis掌握基本上工作中原理和应用,掌握常规的基本数据类型,了解哪些情景运用哪些种类,掌握Redis的事务管理这些。原理一部分,可以大致掌握Memcached的存储空间构造(slab机制),redis就掌握常见基本数据类型比较低层完成存储结构(SDS/单链表/SkipList/HashTable)这些,顺带了解一下Redis的事务管理、RDB、AOF等机制更强
5.PHP:
除开***阶段的工作能力,安裝配置层面可以随便安裝PHP和各种各样第三方拓展的编译程序安裝配置;掌握php-fpm的绝大多数配置选择项和含意(如max_requests/max_children/request_terminate_timeout这类的危害性能的配置),了解mod_php/fastcgi的差别;在PHP层面早已可以娴熟各种各样基本技术性,还包含各种各样深层次些的PHP,包含对PHP面向对象编程的深层次了解/SPL/英语的语法方面的特殊特性例如反射面这类的;在结构层面早已阅读文章过至少一个之上常规PHPMVC框架的编码了,了解基本上PHP框架內部完成机制和设计方案观念;在PHP开发中早已可以娴熟应用常规的策略模式来运用开发(抽象性加工厂/单例模式/观测者/指令链/对策/电源适配器等方式);提议开发自身的PHPMVC框架来充足让开发自由经济,让自已深层次了解MVC方式,也让自已可以在业务流程新项目开发里更快升級;了解PHP的各种各样代码设计方式,了解绝大多数PHP安全性领域情况的处理解决;了解基本上的PHP实行的机制原理(Zend模块/拓展基本上工作中机制);
6.前面:
在***阶段的基本上边,了解基本上的HTTP协议书(协议书编码200/300/400/500,基本上的HTTP互动头);标准容许,能够在深层次写下略微雅致的HTML+CSS+JavaScript,或是可以大概简易应用一些前端框架(jQuery/YUI/ExtJS/RequireJS/BootStrap这类);假如情况容许,能够加强学习JavaScript程序编写,例如闭包机制、DOM解决;再深层次些能够读一读jQuery源代码做加强学习。(该项不做关键学习培训,除非是对前面有兴趣爱好)
7.控制系统设计:
可以设计方案绝大多数中小型系统软件的网站结构、数据库查询、基本上PHP框架型号选择;性能检测清查解决等;可以进行相近:电脑浏览器->CDN(Squid)->Nginx+PHP->缓存文件->数据库查询构造网址的主要设计方案开发维护保养;可以支撑点每日上百万到干万总流量基本上网址的开发维护保养工作中。
非本网作品均来自互联网,转载目的在于传递更多信息,并不**本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其他问题,请及时与本网联系,我们将及时删除内容。