PHP生态

 

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,开发环境与线上环境一致性

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值