26条MySQL性能优化的最佳经验 2016-02-22 8.6k MySQL, PHP教程 MySQL优化 4评论 今天,数据库操作越来越成为应用的性能瓶颈。 对于Web应用尤其明显。 关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。 当我们去设计数据库表结构、查询表数据时,都应该注意性能问题。 这里,我们不会讲过多的SQL语句的优化,这里我们主要针对MySQL数据库的设计优化。 1 使用查询缓存 大多数的My…
Redis缓存Session同步的实践方案 2016-02-22 5.1k 技术 PHP, Redis, Session, 数据库, 缓存 发表评论 最近公司Web服务器换集群方式,集群所带来直接的问题就是session共享。 如果用PHP自带的session处理方式,又要达到一致性,我已知的解决方案是NFS方法,不过担心磁盘性能以及session的处理机制,决定放弃这种方法,最后决定用内存缓存服务器来实现。 公司目前主要缓存的使用已经全部转至Redis下面(主要因为我的极力推荐,呵呵)。所以…
MySQL存储引擎MyISAM与InnoDB的区别比较 2016-02-22 3.8k MySQL, PHP教程 InnoDB, MyISAM, MySQL, 数据库 2评论 使用MySQL当然会接触到MySQL的存储引擎,在新建数据库和新建数据表的时候都会看到。 MySQL默认的存储引擎是MyISAM,其他常用的就是InnoDB了。 至于到底用哪种存储引擎比较好?这个问题是没有定论的,需要根据你的需求和环境来衡量。所以对这两种引擎的概念、原理、异同和各自的优劣点有了详细的了解之后,再根据自己的情况选择起来就容…
用Redis模拟session概述 2016-02-22 2.4k 技术 PHP, Redis, Session 发表评论 Redis 是一个强大而简单的键值型数据库,之前在公司网站改版的过程中大量使用 Redis 来处理一些特殊的需求,我希望能将自己对 Redis 的使用经验都分享出来,而这里算是第一篇吧。 背景 项目是一个有着不小访问量的网站,为了达到分流的作用,网站按照不同的业务(个人、企业、后台、营销、搜索、API等)区分成不同的子域名,而子域名下…
Session原理简述 2016-02-22 6.7k PHP教程 PHP, Session 发表评论 Session存在的意义,估计每个做web开发的人都是了解的,就为了解决HTTP是无状态协议所带来的问题,不多说了。这里主要想说的是服务端与客户端是如何利用session进行交互的。 工作流程 先看下面这幅流程图: 当用户第一次访问站点时,PHP会用session_start()函数为用户创建一个session ID,这就是针对这个用户的唯一标识,每一个访问的用…
MySQL常用命令大全 2016-02-19 5.1k MySQL, PHP教程 MySQL, 备份, 数据库 一条评论 为方便查询,特整理MySQL常用命令,如下。所有命令都亲手检验过,请放心使用:) 约定:$后为Shell环境命令,>后为MySQL命令。 1 常用命令 第一步,连接数据库。 $ mysql -u root -p # 进入MySQL bin目录后执行,回车后输入密码连接。 # 常用参数:-h 服务器地址,-u 用户名,-p 密码,-P 端口 然后是一些常用的命令。 数据…
MySQL索引入门简述 2016-02-19 4.7k MySQL, PHP教程 MySQL, 数据库, 索引 3评论 概述 用来加快查询的技术很多,其中最重要的是索引。通常索引能够快速提高查询速度。如果不适用索引,MYSQL必须从第一条记录开始读完整个表,直到找出相关的行。表越大,花费的时间越多。但也不全是这样。本文讨论索引是什么,如何使用索引来改善性能,以及索引可能降低性能的情况。 索引的本质 MySQL官方对索引的定义为:索引(Index)…
30条MySQL查询的优化方法 2016-02-19 6.9k MySQL, PHP教程 MySQL, PHP, 事务, 优化, 数据库, 海量数据 2评论 以下是广泛使用的30个SQL查询语句优化方法: 1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 2、对查询进行优化,首先应考虑在 where 及 order by 涉及的列上建立索引,避免全表扫描。 3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引,而进行全表扫描…
PHP底层的运行机制与原理 2016-02-17 22.3k PHP教程 PHP, PHP原理 6评论 PHP说简单,但是要精通也不是一件简单的事。我们除了会使用之外,还得知道它底层的工作原理。 PHP是一种适用于web开发的动态语言。具体点说,就是一个用C语言实现包含大量组件的软件框架。更狭义点看,可以把它认为是一个强大的UI框架。 了解PHP底层实现的目的是什么?动态语言要像用好首先得了解它,内存管理、框架模型值得我们借鉴,…
生成每秒100万级别HTTP请求的Web负载工具 2016-02-16 9.9k PHP教程 发表评论 Tsung http://tsung.erlang-projects.org/ Tsung是一个开源的多协议分布式的负载测试工具。Tsung可以对HTTP,WebDAV,SOAP和PostgreSQL,MySQL,LDAP和Jabber/ XMPP服务器进行压力测试,是一款免费软件。 Httperf https://github.com/httperf/httperf Httperf是一个负载压力测试工具,用于在一定约束条件下测试系统所能承受的并发用户量…