sanchi
修炼之路
阶段1
能简单处理html+css+js前端页面,可实现管理后台前端页面
熟练安装php的web运行环境,并调整配置,会自行安装php扩展
熟练数据库操作,清楚为何使用pdo而不使用mysql等其他数据库扩展
熟练php的语法,熟练使用内置函数,并明白各函数的作用
掌握compose的用法,熟练使用主流框架,如 ThinkPHP、Laravel
掌握一些基础的算法,如递归、冒泡排序
阶段2
清楚动态语言和静态语言的区别,明白PHP的局限性
清楚session、cookie的运行机制、特性、使用方法
清楚web服务的访问原理,每个环节是如何协作的,如: Nginx 是如何调用 PHP 的
掌握Linux的基本用法,如:
基本操作 ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip
文本操作命令 sed/awk/grep/tail/less/more
管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd
熟练调优Linux + Nginx + MySQL + PHP + Redis环境
能调整Nginx的rewrite、location等的配置,熟练使项目支持伪静态
熟悉主流的代码规范,如: PSR,注重代码风格和注释习惯,编写高效的代码
能自行实现autoload机制,清楚compose如何运作的
能实现接管PHP本身的session,模仿cookie机制
清楚PHP为何可以使用全单例模式,而不容易出现线程安全问题
熟练使用缓存,知道如何利用缓存提高系统的并发负载能力
有并发安全意识,知道如何规避并发情况下导致的安全问题,善用锁机制
有效避免或解决sql注入、js注入、xss跨站攻击
针对不同项目更有针对性设计数据结构,知道如何通过数据结构约束来避免大量的数据查询
能够重新实现php基础框架v3/package下的所有功能
能安全、有效地处理文件、图片,意识到句柄资源为何需要释放和加锁
知道如何优化计算量巨大的请求,如: 每个用户同一时间只能运行一个任务,也可通过定时任务来优化
能针对不同的sql语句提供优化方案,使用explain
清楚HTTPS、HTTP的区别,知道如何搭建HTTPS
阶段3
研究HTTP、TCP/IP协议
熟练掌握socket套接字网络编程
熟练组建代码分布式集群、MySQL分布式集群、PHP分布式集群
熟练搭建常见的服务器监控方案
系统(CentOS)运行不稳定时,可以根据排查原因并解决
知道如何使用CDN来优化网站访问
可以自行开发PHP扩展
还是迷茫的话,去学一门强类型语言吧,c\c++\java\golang 等
sanchi的更多相关文章
- Swagger2的使用及注意事项
一.Swagger的主要作用有两方面: 1.生成在线文档,通过注解方式生成在线文档,方便在定义修正接口时直接修改接口文档: 2.对接口文档在线测试,不用在输入接口地址以及里面的参数对象,可以很方便的对 ...
- rainmeter 修正天气插件信息不准确 设置居住城市
rainmeter天气插件的原理是用爬虫抓取一个天气网页然后用自带的那一套正则表达式匹配出天气信息 在国外官网社区下载的插件的天气信息城市都会出现问题(因为插件作者又不知道你在哪),解决方法是在原基础 ...
随机推荐
- 招聘移动APP、接口、自动化、性能和安全方面的兼职测试讲师
只要您在移动APP.接口.自动化.性能和安全方面有丰富的测试经验,我们都欢迎您能加入我们,成为我们的兼职测试讲师,我们可以提供给您一份优厚的薪资,同时能在行业发展.企业培训.授课经验.出版专业著作等方 ...
- Linux修改网卡名称的方法
假设我们要修改网卡名为mybridge 实现步骤如下 1.# vim /etc/modprobe.conf 找到alias eth0 vmxnet 将eth0改为你想要的网卡名称 例: alias m ...
- Go语言排序算法实现
// Algorithm project Algorithm.go package Algorithm // 冒泡排序 func BubbleSort(a []int) { n := len(a) ; ...
- OpenSceneGraphic 着色器中数组的应用【转】
https://blog.csdn.net/zsq306650083/article/details/50533480 //osg的写法osg::ref_ptr<osg::StateSet> ...
- React组件间的通信
1.子组件调用父组件,采用props的方式进行调用和赋值,在父组件中设置相关属性值或者方法,子组件通过props的方式进行属性赋值或者方法调用: 2.父组件调用子组件,采用refs的方式进行调用,需要 ...
- JSP展示两位小数
<td class="thCenter"> <fmt:formatNumber type="number" value="${rec ...
- Scikit-learn 概述
https://www.leiphone.com/news/201701/ZJMTak4Y8ch3Nwd0.html
- protobuf的简单使用
操作系统 : CentOS7.3.1611_x64 gcc版本 :4.8.5 go 版本 : go1.8.3 linux/amd64 Python 版本 : 2.7.5 libprotoc : 2.5 ...
- Kubernetes 1.12公布:Kubelet TLS Bootstrap与Azure虚拟机规模集(VMSS)迎来通用版本号
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/M2l0ZgSsVc7r69eFdTj/article/details/82880341 https: ...
- ComputeShader中Counter类型的使用
接上一篇:https://www.cnblogs.com/hont/p/10122129.html 除了Append类型对应的Consume/AppendStructuredBuffer还有一个Cou ...