浅谈PHP优化顺序

开发工程中我们可能会为自己的编程优化步骤感到困惑,不知该从何做起,这里我也结合相关资料和自己的经验,简要谈谈PHP优化顺序,望网页们给予补充和改进。
1.代码优化
    代码优化就是是平时写代码的一些良好的习惯与技巧等等比如尽可能的静态化一个方法,加载文件竟可能给完  整路径,清楚一些相似功能函数的区别等等...
2.工具优化
    做数据缓存(memcacheds)和页面缓存达到页面静态化
3.优化sql语句
    关键字大写,使用缩;

  分行格式书写sql,查询时尽量少用* ;

  多表查询的时候尽可能的使用索引字段为关联字段;

  where条件后面最好是索引字段,运用读锁与写锁,数据库函数等等,尽量少使用;
4.优化数据库结构
   对于经常查询的字段列设置索引;

  index,unique,primay key为字段选择适当的数据类型与长度;

  注意多表关联的字段要长度类型一致;

  使用Explain查看SQL的执行计划情况,创建表引擎等等。
5.以上优化都做到过后!如还需要优化则需要数据库分表(横向与纵向)在就设置主从数据库。

浅谈PHP优化顺序

时间: 2024-08-28 15:56:11

浅谈PHP优化顺序的相关文章

浅谈网站优化六步骤

1.分析关键词 这是进行SEO最重要的一环,关键词分析包括:关键词关注量分析.竞争对手分析.关键词与网站相关性分析.关键词部署.关键词排名预测. 2.网站架构分析 网站结构符合搜索引擎的蜘蛛喜好则有利于SEO.其中网站架构分析包括:剔除网站架构不友好设计.尽量使用树状目录结构.网站导航与链接优化. 2.关键词布局 SEO不仅仅只让网站首页在搜索引擎有好的排名,更为重要的是让网站的每个页面都带来一定流量.所以我们要为每个页面单独建设独一无二的页面主题(title,description)以及页面正

浅谈SQL优化入门:1、SQL查询语句的执行顺序

1.SQL查询语句的执行顺序 (7) SELECT (8) DISTINCT <select_list> (1) FROM <left_table> (3) <join_type> JOIN <right_table> (2) ON <join_condition> (4) WHERE <where_condition> (5) GROUP BY <group_by_list> (6) HAVING <having_

浅谈SQL优化入门:3、利用索引

0.写在前面的话 关于索引的内容本来是想写的,大概收集了下资料,发现并没有想象中的简单,又不想总结了,纠结了一下,决定就大概写点浅显的,好吧,就是懒,先挖个浅坑,以后再挖深一点.最基本的使用很简单,直接就写在这里吧. 索引是众所周知的可以提高查询的速度,且针对的是具体的字段,使用方式为( 不具体指明则建立非聚集索引): CREATE INDEX <索引名> ON <表名(关系名)>; e.g. CREATE INDEX yearIndex ON movie(year); 而撤销索引

浅谈sql优化

问题的发现:      菜鸟D在工作的时候发现项目的sql语句很怪,例如 : select a.L_ZTBH, a.D_RQ, a.VC_BKDM, (select t.vc_name from tbkxx t where t.vc_code = a.vc_bkdm) vc_name, a.VC_BZ, a.L_SCLB, a.EN_ZS, a."ROWID", s."ROWID",--冗余列 decode(nvl(a.l_cjsl, 0), 0, 0, round

浅谈SQL优化入门:2、等值连接和EXPLAIN(MySQL)

1.等值连接:显性连接和隐性连接 在<MySQL必知必会>中对于等值连接有提到两种方式,第一种是直接在WHERE子句中规定如何关联即可,那么第二种则是使用INNER JOIN关键字.如下例两种方式是"等同"的. //WHERE方式 SELECT vend_name, prod_name, prod_price, quantity FROM vendors, products, orderitems WHERE vendors.vend_id = products.vend_

浅谈数据库优化之-索引

数据库索引 1.什么是索引 在数据库中,索引的含义与日常意义上的“索引”一词并无多大区别(想想小时候查字典),它是用于提高数据库表数据访问速度的数据库对象.A)索引可以避免全表扫描.多数查询可以仅扫描少量索引页及数据页,而不是遍历所有数据页.B)对于非聚集索引,有些查询甚至可以不访问数据页.C)聚集索引可以避免数据插入操作集中于表的最后一个数据页.D)一些情况下,索引还可用于避免排序操作. 当然,众所周知,虽然索引可以提高查询速度,但是它们也会导致数据库系统更新数据的性能下降,因为大部分数据更新

浅谈数据结构之顺序栈(三)

栈:是限定仅在表尾进行插入与删除操作的线性表.我们把允许插入与删除的一端称为栈顶,另一端称为栈底,不含任何数据元素的称为空栈.栈的插入操作,叫作进栈,也叫压栈.入栈,类似于子弹入弹夹:栈的删除操作,叫作出栈,也叫弹栈,如同弹夹中的子弹出夹.注意:栈的定义中的"表尾"指的是"栈顶",而不是"栈底". 首先,栈是一个线性表,也就是说:栈具有线性结构,即前驱后继关系:只不过它是一个特殊的线性表而已,它的特殊之处在于限制了这个线性表的插入与删除位置,它始

浅谈页面优化

1.为什么要优化页面? 提升网页响应速度:对搜说引擎.屏幕阅读器友好:提高可读性.可维护性等. 2.如何优化? 减少请求:减少文件大小:页面性能:可读性可维护性等. (1)减少请求 图片合并(合并小图标): 减少CSS文件请求,可以将多个CSS文件合并为一个,少量CSS样式采用内联,避免import方式引入CSS文件. (2)减少文件大小 减少图片大小(选择合适格式),CSS值缩写减少CSS文件大小,压缩文件,减少标签数量. (3)可读性.可维护性 规范化,语义化,尽量避免Hack,模块化,注释

浅谈斜率优化

斜率优化 如果对于方程形如这样的 我们不能对其进行比较有效果的优化,因为它的转移,涉及到了关于i和关于j的一些数组,这时我们就需要用斜率优化了. 通常我们令k<j<i,且用j来更新F[i]比用j优.则有 并且我们都可以化成如下形式,X[j],Y[j]指只关于j的数,X[k],Y[k]亦之 我们可以根据这个式子,来优化DP.这大概就是斜率优化的主要思想 实践出真知,让我们看一下HDU3507吧 很容易可以推出状态转移方程 令k<j<i,那么就可以得到 移项可得 如果我们令Y[i]=F