PHP语言篇
第一,php类与对象、常量
1,访问控制
public,protected,private
2,抽象类
abstract class AbstractClass
3,final关键词
类前面添加此关键词后,不能被集成。
方法前面添加此关键词后,不能被覆盖。
只有类和方法才能被定义为final
4,构造函数和析构函数
构造函数:__construct(),parent::__construct()
析构函数:__destruct()
5,重载函数
对象:__call()
静态:__callStatic()
6,在给不可访问属性赋值和读取不可访问属性值时
在给不可访问属性赋值:__set()
读取不可访问属性值时:__get()
7,当对不可访问属性调用时
当对不可访问属性调用isset()||empty()时:__isset()
当对不可访问属性调用unset时:__unset()
8,serialize和unserialize函数
serialize:__sleep()
unserialize:__wakeup()
9,当类被看成字符输出时
__toString()
10,当以调用函数的方式调用对象时
__invoke()
11,对象复制
__clone()
12,接口
interface b
class a implements b
13,类型约束(int、string、traits)
14,类常量定义
const
15,类的自动加载
spl_autoload_register()
获取异常:throw new Exception()
16,对象继承
extends
17,trait
18,匿名类
19,zend引擎是PHP实现的核心
20,自动加载
__autoload
spl_autoload_register
21,php类型比较
isset(),empty(),is_null(),boolean,==,===
22,OOP-面向对象
第二,虚拟化技术
1,vmware workstation/virutal box
2,vagrant
3,docker
第三,包管理
1,pear
2,composer
3,pecl
4,pickie
第四,程序设计编码
1,设计模式
2,设计语言(UML)
3,SOA(rpc,restful api)
4,代码重构(code refactor)
5,代码评审(code review)
第五,测试
1,单元测试(PHPUnit)
2,代码覆盖率(code coverage)
第六,安全
1,xss
2,csrf
第七,接口文档编写工具
YApi-可视化接口管理平台
mysql篇
1,查询优化
(1),explain
(2),index hint
(3),慢查询
2,存储引擎
(1),myisam
(2),innodb
3,mysql-DDL、DML、DCL等
(1),DDL-数据定义
create-创建表
alter-修改表
drop-删除表
(2),DML-数据操作
insert-数据插入
delete-数据删除
update-数据修改
select-数据查询
group-分组
join-链接
union-联合
子查询
分页
(3),DCL-数据控制
grant-授权
revoke-取消授权
(4),事务
acid特性-原子、隔离、一致、永久
commit
rollback
(5),数据提交方式
显示提交-commit命令完成的提交
隐示提交-用sql命令完成的提交
自动提交-autocommit no
web应用服务器
1,apache
apache是一个跨平台、采用模块化设计的 Web 服务器,由于其简单高效、稳定安全的特性,被广泛应用于计算机技术的各个领域。
2,nginx
nginx("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 邮件代理服务器 。
Tengine-淘宝网基于nginx开发的web服务器
3,合理使用浏览器缓存 - Expires, Etag, Cache-Control, Last-Modified 浏览器缓存(Browser Caching)是为了节约网络的资源、加快浏览速度,浏览器在用户磁盘上对最近请求过的文档进行存储,当访问者再次请求这个页面时,浏览器尝试直接从本地磁盘获取文档内容,加速页面访问速度的一种方法。
4,浏览器缓存方式:
(1),缓存协商 - Etag, Last-modifie 缓存协商的方式去服务器端询问页面有没有修改过,没有修改则返回 304 直接使用缓存内容,否则返回新内容
(2),彻底缓存 - Cache-Control,Expires 彻底缓存的方式在缓存失效之前不再跟服务器交互,直接使用缓存内容
网站系统架构
1,内容缓存加速
squid
nginx
2,服务负载均衡
比较理想基本架构:Array/LVS —> Nginx/Haproxy —> Squid/Varnish —> AppServer
3,分布式缓存系统
memcached
redis
4,分布式文件系统
fastdfs
mogilefs
hdfs
5,mysql数据库集群
主从复制、读写分离、分库分表
6,nosql数据库
mongodb
riak
cassandra
neo4j
hadoop&hbase
7,分布式消息队列
rabbitmq
kafka
activemq
zeromq
kestrel
gearman
8,搜索引擎技术
lucene
elasticsearch
solr
sphinx search
xapian
9,服务器硬件/系统监控
zabbix
nagios
munin
open-falcon
10,开发环境与线上环境一致性