PHP编程语言是众多程序员初学者的天堂,它简单入门、容易上手,所以吸引了很多人来学习。所以造就了虽然PHP初级程序员很多,但是中高级程序员就很少,在这种社会现象下,中高级程序员的工资越来越高,成为中高级程序员需要满足什么条件呢?请看下面。
中级PHP程序员
1.Linux
能够流畅的使用Shell脚本来完成很多自动化的工作;awk/sed/perl 也操作的不错,能够完成很多文本处理和数据统计等工作;基本能够安装大 部分非特殊的Linux程序;了解基 本的Linux服务,知道如何查看Linux的性能指标数据,知道基本的Linux下面的问题跟踪等
2. Nginx:
了解复杂一些的Nginx配置;包括多核配置、events、proxy_pass,sendfile/tcp_*配置,知道超时等相关配置和性能影响;知道nginx除了web server,还能够承担代理服务器、反向静态服务器等配置;知道基本的nginx配置调优;
3. MySQL/MongoDB:
在第一阶段的基础上面,在MySQL开发方面,掌握很多小技巧,包括常规SQL优化;除了能够搭 建MySQL,还能够冷热备份MySQL数据,还知道影响innodb/myisam性能的配置选项,也知 道这些选项配置成为多少值合适。
4. Redis/Memcached:
知道Memcached和Redis的异同和应用场景,能够独立安 装 Redis/Memcached,了解Memcahed的一些基本特性和限制,比如最大的value值,知道PHP跟他们的使用结合;Redis了解 基本工作原理和使用,了解常规的数据类型,知道什么场景应用什么类型,了解Redis的事务等等。
5. PHP:
了解php-fpm的大部分配置选项和含义,知道mod_php /fastcgi的区别;在PHP方面已经能够熟练各种基础技术;在框架方面已经阅读过最少一个以上常规PHP MVC框架的代码了,知道基本PHP框架内部实现机制和设计思想。
6. 系统设计:
能够设计大部分中型系统的网站架构、数据库、基本PHP框架选型;性能测试排查处理等;能够完成类似;能够支撑 每天数百万到千万流量基本网站的开发维护工作。
高级PHP程序员
1. Linux:
能够使用很多高级复杂的命令完成工作;在shell脚本方面,已经能够编写比较复杂的shell脚本(超过500行)来协助完成很多包括备份、自动化处理、监控等工作的 shell;对awk/sed/perl 等应用已经如火纯青,能够随意操作控制处理文本统计分析各种复杂格式的数据。
2. Nginx:
可以考虑侧重在关于Nginx工作原理部分的深入学习,主要表现在阅读源码开始,比如具体的master/worker工作机制,Nginx内部 的事件处理,内存管理等等;同时可以学习Nginx扩展的开发,可以定制一些自己私有的扩展。
3. MySQL/MongoDB:
在第二阶段的基础上面,在MySQL应用方面,除了之前的基本SQL优化,还能够在完成一些复杂操作;除了安装配置,已经能够处理更多复杂的MySQL的问题。对MySQL应用层面,对MySQL的核心关键技术比较熟悉。
4. Redis/Memcached:
可以把源码进行阅读,特别是内存管理部分,方便深入理 解;Redis部分,可以多做一些复杂的数据结构的应用;多涉及 aof等同步机制的学习应用,设计一个高可用的Redis应用架构和集群。
5. PHP:
能够解决在PHP开发中遇到95%的问题,了解大部分 PHP的技巧;对大部分的PHP框架能够迅速在一天内上手使用,并且了解各个主流PHP框架的优缺点,能够迅速方便项目开发中做技术选型。能够进行基本的PHP扩展开发,了解一些扩展开发的中高级知识;除了开发 PHP扩展,可以考虑学习开发Zend扩展,从更底层去了解PHP。
6. 前端:
深入了解HTTP协议;除了之前的前端 方面的各种框架应用整合能力,前端方面的学习如果有兴趣可以更深入。
更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。
程序员编程交流QQ群:805358732
如果你想用Python开辟副业赚钱,但不熟悉爬虫与反爬虫技术,没有接单途径,也缺乏兼职经验
关注下方微信公众号:Python编程学习圈,获取价值999元全套Python入门到进阶的学习资料以及教程,还有Python技术交流群一起交流学习哦。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!