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天气插件的原理是用爬虫抓取一个天气网页然后用自带的那一套正则表达式匹配出天气信息 在国外官网社区下载的插件的天气信息城市都会出现问题(因为插件作者又不知道你在哪),解决方法是在原基础 ...
随机推荐
- C. Playing Piano 动态规划
题目意思是给你一个n长度的数字串为a,让你构造一个n长度的数字串b值都为1-5满足以下条件: 正常的dfs暴力构造会超时,我试过了.. 可以开一个二维数组dp[i][j]用来表示b的第i个数字为j是否 ...
- pin-a-binary-instrumentation-tool
https://software.intel.com/en-us/articles/pin-a-binary-instrumentation-tool-downloads Introduction t ...
- Using async-await on .net 4
I'm currently starting to create an application that would profit a lot from C# 5's async-await feat ...
- javaScript系列 [01]-javaScript函数基础
[01]-javaScript函数基础 1.1 函数的创建和结构 函数的定义:函数是JavaScript的基础模块单元,包含一组语句,用于代码复用.信息隐蔽和组合调用. 函数的创建:在javaScri ...
- 解析 ViewTreeObserver 源码(下)
继上篇内容,本文介绍 ViewTreeObserver 的使用,以及体会其所涉及的观察者模式,期间会附带回顾一些基础知识.最后,我们简单聊一下 Android 的消息传递,附高清示意图,轻松捋清整个传 ...
- postman6 在Linux中,body和response字体显示不正常的解决方法
在Linux中,postman的body和response使用的默认字体如果没有安装的话,会导致字体和光标的位置不一致,例如字体显示长度只有30,而光标在70的位置,导致编辑困难. 经查找css的定义 ...
- MySQL优化的一些基础
在Apache, PHP, mysql的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分.对于Discuz!论坛程序也是如此,MySQL的设置是否合理优化,直接 影响到论坛的速度和承载量! ...
- openssl RSA密钥格式PKCS1和PKCS8相互转换
RSA私钥格式PKCS1和PKCS8相互转换 RSA公钥格式PKCS1和PKCS8相互转换 以下转换基于openssl命令的操作: 1. openssl 生成pkcs1格式的私钥,密钥长度1024位, ...
- linux 命令之 dmidecode
Dmidecode 这款软件同意你在 Linux 系统下获取有关硬件方面的信息.Dmidecode 遵循 SMBIOS/DMI 标准.其输出的信息包含 BIOS.系统.主板.处理器.内存.缓存等等. ...
- tesseract 4.0 ocr图像识别利器,可识别文字。图片越高清越准确
//总地址 https://github.com/tesseract-ocr/tesseract/wiki //windows exe tesseract 4.0下载: https://github. ...