PHP技能树

PHP技能加点

◆ 分布式存储

◇ Redis

◇ MongoDB

◆ 关系型存储

◇ Mysql

▲ 设计原则
  • 用尽量少的存储空间来存数一个字段的数据,使用最合适的类型和长度

  • 为每个表创建一个主键索引

  • 最好给每个字段一个默认值,最好不能为null(NULL字段很难查询优化、NULL字段的索引需要额外空间、NULL字段的复合索引无效)

  • 创建合理的索引

  • 三大范式

    • 字段具有原子性,不可再拆分
    • 存在主键,每一行都可以被唯一区分
    • 不能有冗余字段(合理冗余)
  • 字段数少儿精,最好不要超过20

  • 避免大sql的使用,避免大事务的使用,避免大批量操作

  • innodb主键推荐使用自增列

    索引保存结构是B+树结构

  • 不使用外键

  • 避免使用trig/func

  • 少用触发器, 多用存储过程

▲ 优化手段
  • 不在数据库里做计算,移到业务层

  • 不要对索引列进行计算

  • 不用select *

  • OR改写为IN或者UNION

  • 避免使用负向查询

  • 垂直分隔,分表分库,读写分离

  • 覆盖索引

  • 一般来说,除非有其他理由,只需要在关联顺序中的第二张表的相应列上创建索引

  • 确保任何的GROUP BYORDER BY中的表达式只涉及到一个表中的列

  • 当只要一行数据时使用 LIMIT 1

    MySQL数据库引擎会在找到一条数据后停止搜索,而不是继续往后查少下一条符合记录的数据

  • 利用PROCEDURE analyse()分析表数据

◆ 框架

◇ 框架门类

▲ YII

Yii中使用了当前Web开发中最为主流和成熟的设计模式。包括依MVC模式、依赖注入(Denpdency Injection, DI)和服务定位器(Service Locator)等种模式。

▲ Laravel
▲ Yaf

◆ 设计模式

  • 单例
  • 简单工厂
  • 注册树
  • 观察者
  • 命令
  • 责任链
  • 建造者

◆ Linux

◇ 常用命令

◇ Shell脚本

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值