前言:
Memcache是什么?
Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。
它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。
月度归档: 2012年10月
windows下手动搭建Apache+PHP+MySQL
一、下载
http://pan.baidu.com/share/link?shareid=95859&uk=2349308099
二、安装、解压
1. Apache
主要配置Network Domain、Server Name、Email地址(我依次填的是localhost、localhost、邮箱随意)以及Apache服务的占用端口,默认为80端口,你可以根据需要配置在其他端口,Apache的安装目录你可以使用默认目录或根据需要自行选择安装目录(我安装到 D:\Apache)。
ubuntu12.04下memcached安装与配置
其中包括memcache服务器端的安装和memcached客户端的安装。
所谓服务器端的安装就是在服务器(一般都是linux系统)上安装Memcache实现数据的存储
所谓客户端的安装就是指php(或者其他程序,memcache还有其他不错的api接口提供)去使用服务器端的memcache提供的函数,客户端需要php添加扩展。
安装Memcache服务端
sudo apt-get install memcached
Ubuntu12.04下安装Xdebug及配置
一: 安装xdebug,这里用pecl
sudo apt-get install php-pear sudo apt-get install php5-dev sudo pecl install xdebug
二: 配置xdebug
memcached的key和value的长度限制
memcached的简单限制就是键(key)和item的限制。最大键长为250个字符。可以接受的储存数据不能超过1MB,因为这是典型slab 的最大值。这里我们可以突破对key长度的限制。
问题解决:
修改memcached源文件,在memcached.h中定义key的长度,其代码为:
Mysql一些细节性的优化
1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:
select id from t where num is null
可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:
select id from t where num=0
3、应尽量避免在 where 子句中使用!=或<>操作符,否则
mysql中的unsigned说明
unsigned 既为非负数,用此类型可以增加数据长度!
例如如果 tinyint最大是127,那 tinyint unsigned 最大 就可以到 127 * 2
unsigned 属性只针对整型,而binary属性只用于char 和varchar。