- 浏览: 427071 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
fufu0414:
PHP类实例教程:abstract类和abstract方法 -
fufu0414:
[list][url][img][img][img][list ...
PHP类实例教程:abstract类和abstract方法
windows下:
很多phper不知道如何在Windows下搭建Memcache的开发调试环境,最近个人也在研究Memcache,记录下自己安装搭建的过程。
其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家。
Windows下的Memcache安装:
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached
2. 在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装
3. 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
4.下载php_memcache.dll,请自己查找对应的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!
memcached的基本设置:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
Memcache环境测试:
运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!
<?php
$mem = new Memcache;
$mem->connect(”127.0.0.1″, 11211);
$mem->set(’key’, ‘This is a test!’, 0, 60);
$val = $mem->get(’key’);
echo $val;
?>
参考资料:
对Memcached有疑问的朋友可以参考下列文章:
Linux下的Memcache安装:http://www.ccvita.com/257.html
Windows下的Memcache安装:http://www.ccvita.com/258.html
Memcache基础教程:http://www.ccvita.com/259.html
Discuz!的Memcache缓存实现:http://www.ccvita.com/261.html
Memcache协议中文版:http://www.ccvita.com/306.html
linux下:
很早就想接触下memcacheD一时间也没有机会。
在这里澄清一下,为什么我的文章的标题memcache,而我的上面说的却是memcached?
memcached是一款软件,可以将你的程序或图片以hash的格式存储在服务器内存中。
好了废话少说,下面说的memcache是PHP的一个扩展,你可以到PHP官方去下载地址:http://pecl.php.net/package/memcache
好了,说下安装步骤:
首先得先安装libevent,因为memcached是依赖这个的。
我下载的版本是:
libevent-1.3a.tar.gz
$tar -zvxf libevent-1.3.a.tar.gz
然后进入cd libevent-1.3
$./configure --prefix=/usr/local/libevent //这里我习惯性的会把服务器相关的扩展或软件安装到$/usr/local
$make
$make install
然后安装memcached我用的是memcached-1.2.5.tar.gz版本
这样也很简单,同理:
$tar -zvxf memcached-1.2.5.tar.gz
$./configure --prefix=/usr/local/memcached
$make
$make install
然后运行:
$/usr/local/memcached/bin/memcached –d –m 500 -l 64.128.191.151 -p 11211 -u root
注释:
-u 以什么帐户启动
-m memcached共享的内存大小(以M为单位)
-l memcached服务的主机IP(一般是本机的IP,此项省略就是所有本机的IP)
-p memcached服务监听的端口(这个可以自己指定,只要不冲突就行,默认是11211)
下面安装PHP的memcache扩展
依然但是tar -zvxf memcache,我的版本是3.0以上,为什么选择这个,因为我的PHP版本是最新的2.5.6
而memcache最新的是3.0以上,考虑对应关系。
解压后进入cd memcache
然后运行:
$/usr/local/php/bin/phpize 回车
然后运行
$./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
$make
$make install
安装完后会有类似这样的提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060922/
把这个记住,然后修改php.ini,把
extension_dir = "./"
修改为
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060922/"
并添加一行
extension=memcache.so
好啦,我们测试一下,对了别忘记重新启动下APACHE哦,我安装N次后的经验。
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache->get('key'); //从内存中取出key的值
echo $get_value;
?>
输出test,OK啦,成功安装。
-------------------------------------------------------------------------
其实因为版本不同,以上安装过程还有个头疼的小插曲。
我一开始安装的memcache,是1.5,然后PHPINFO没有看到相关信息。
后来又换了memcache2.0以上版本。
还是不行,头疼,后来实在没办法了,考虑到了静态编译PHP,就是自己重新整理configure,重编译PHP。
把memcache扩展直接插到php源码中,这次我考虑到了版本问题,直接安装的是memcache3.0
相关版本。
首先解压
$tar -zvxf memcache
$cp memcache /soft/phpsrcdir/ext
$ rm configure
$ ./buildconf --force
$ ./configure --help
$ ./configure ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with- mysql=/usr/local/mysql --enable-memcache --enable-mbstring --zlib
$ make
$ make install
phpinfo();一下,出现了memcache相关信息,终于好了,呵呵
注意:本地测试,可能会报错。类似于:
Notice: Memcache::connect() [function.Memcache-connect]: Server localhost (tcp 11211) failed with: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 (10060) in ***/test.php on line 4
Warning: Memcache::connect() [function.Memcache-connect]: Can't connect to localhost:11211, 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 (10060) in ***/test.php on line 4
Could not connect
解决办法:
把localhost换成127.0.0.1
发表评论
-
CentOS 上安装Gearman及其PHP扩展
2016-01-11 19:48 556安装服务端 yum install -y uuid-dev ... -
ffmpag域ffmpag-php安装过程
2015-11-13 16:18 953yum install automake autoco ... -
centos6.X下安装php7脚本
2015-10-29 08:59 877#!/bin/bash #安装php7 #安装所需 ... -
Predis的一些操作汇总
2015-07-17 15:50 758//使用autoload加载相关库,这边重点就是为了requ ... -
php curl函数应用方法之模拟浏览器
2015-05-30 15:26 681原文地址:http://num7.ite ... -
php的curl函数模拟post数据提交,首次速度非常慢的处理办法
2015-05-30 15:24 782如果你用 curl_setopt 函数来与远程的webser ... -
PHP类实例教程(一):开始
2009-08-27 00:33 502从OOP(面向对象)的视角看,不应区分语言。无论是C++、无 ... -
PHP类实例教程(二):类和对象的基础部分
2009-08-27 00:41 441Everything is Object:万事万物皆对象 ... -
PHP类实例教程(三):PHP5类中的属性
2009-08-27 00:51 399属性:用来描述对象的数据元素称为对象的属性(也称为数据/状态 ... -
PHP类实例教程(四):PHP5类中的方法
2009-08-27 08:39 474方法:对对象的属性进 ... -
PHP类实例教程(五):对象的比较
2009-08-27 11:39 403在PHP中有 = 赋值符号、== 等于符号和 === 全等于 ... -
PHP类实例教程(六):构造函数
2010-01-18 17:56 275构造方法又称为构造函数,是对象被创建时自动调用的方法,用来完成 ... -
PHP类实例教程(七):析构函数与PHP的垃圾回收
2010-01-18 18:09 516析构函数:当某个对象成为垃圾或者当对象被显式销毁时执行。 ... -
PHP类实例教程(八):类的继承
2010-01-19 14:03 501继承是面向对象最重要的特点之一,就是可以实现对类的复用。 ... -
PHP类实例教程(九):访问控制 private, protected, public
2010-01-19 14:04 436在PHP5中,可以在类的属性和方法前面加上一个修饰符(mod ... -
PHP类实例教程(十):类的重写(override)
2010-01-19 14:05 518如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个 ... -
PHP类实例教程(十一):类中this关键字
2010-01-19 14:06 343PHP5中为解决变量的命 ... -
PHP类实例教程(十二):类中parent::关键字
2010-01-19 14:07 595PHP5中使用parent::来引用 ... -
PHP类实例教程(十四):设计模式之单件模式
2010-01-19 14:10 499单件模式要解决的问题就是“如何让这个类只有一个实例”。 我 ... -
PHP类实例教程(十五):final类、final方法和常量
2010-01-19 14:11 548final---用于类、方法前。 final类---不可被 ...
相关推荐
在Windows环境下安装Memcache是一个相对较为特殊的操作,因为Memcache主要设计用于Unix/Linux系统,但通过一些工具和步骤,我们也可以在Windows上实现这一过程。本文将详细介绍在Windows上安装Memcache的步骤,并...
1. **安装**:与memcache类似,你可以通过源码编译或使用包管理器在Windows和Linux上安装Redis。 2. **启动与配置**:Redis配置主要修改`redis.conf`文件,设置端口、密码、持久化策略等。启动Redis服务器,通常...
本文档主要介绍如何在Windows环境下安装和配置Memcache。 #### 二、准备工作 在开始安装之前,确保已具备以下条件: 1. **Windows操作系统**:本文档基于Windows平台。 2. **PHP环境**:确保已在本地计算机上安装...
3. **易于部署**:在Windows环境下,通过简单的编译和配置过程即可完成安装,对于不熟悉Unix环境的开发者尤其友好。 **三、安装与配置** 1. **下载与解压**:从官方网站或者第三方源获取Memcache 1.2.6的Windows...
**安装过程**:将对应PHP版本的memcache.dll文件放入PHP的`ext`目录下,然后在php.ini配置文件中启用该扩展,例如添加`extension=memcache.so`(Linux) 或 `extension=php_memcache.dll`(Windows)。重启PHP服务后,就...
安装和配置过程可能包括安装服务、设置端口号、内存限制等步骤,确保Memcache能够在Windows环境下稳定运行。 描述中提到的".net的驱动"是指用于.NET Framework或.NET Core的Memcache客户端库。这些库允许.NET开发者...
在Windows环境下,虽然不如在Linux环境下常见,但依然可以通过一些步骤来安装和启动本地的Memcache服务。以下是对如何在Windows上开启Memcache服务的详细步骤及相关的知识点: 首先,你需要下载Memcache的Windows...
这个是windows平台使用的memcache,可以用于调试,实际生产环境就不要用了,换linux,具体可以查看我的文章: http://blog.csdn.net/cdnight/article/details/18924611
在本文中,我们将详细探讨 Memcache 的基本概念、安装过程以及如何在Windows和Linux环境下配置PHP扩展。 ### 1. Memcache 的基本概念 Memcache 是一个基于内存的键值存储系统,适用于存储小型数据片段(如字符串、...
最近要玩Memcache,所以需要Windows 64位下搭建Memcache的开发调试环境,记录下自己安装搭建的过程,发现比Linux中搭建简单多了。 这里是我用Windows 7 64Bit安装Memcache的过程 1、安装PHP、Mysql以及Apache,这边...
在基于Windows的环境中,由于其主要设计为Linux环境下的服务,因此在Windows上使用通常需要借助第三方客户端工具进行管理和监控。这个压缩包提供的是一个专为Windows编译的MemCache客户端监控工具,这对于Windows...
**Windows 版本** 的 Memcached 对于在Windows操作系统上运行的开发人员来说是个福音,因为它提供了与Linux环境下相同的高效缓存服务。在提供的压缩包中,包含32位(x86)和64位(x64)两种版本,适应不同硬件环境的...
Memcache 的运行依赖于 libevent 库,这是一个事件驱动的网络库,支持多种操作系统,包括 Windows、Linux 和 BSD 等。libevent 提供了跨平台的事件机制,如 select、epoll 和 kqueue。最新版本为 libevent-1.4.8-...
- **Linux环境下的安装**:描述在Linux服务器上部署MemCache的过程,涉及包管理器安装、配置文件修改和启动服务的方法。 5.2 **MEMCACHED 客户端** - **客户端配置**:讲解如何在应用程序中设置和连接到MemCache...
- PHP的`memcache.dll`扩展不仅支持Linux等类Unix系统,也提供了专门针对Windows平台的32位和64位版本。这使得在Windows服务器上部署PHP与Memcache成为可能,为Windows环境下的Web开发者提供了便利。 3. **安装与...
- Memcached服务器:首先需要在Linux或Windows服务器上安装和配置Memcached服务器,包括编译安装libevent库(在Linux环境下)以及Memcached程序本身。 - Magent代理:Magent是一个开源的Memcached代理,可以提高...
四、安装Memcache服务器(Linux和Window上分别安装) Windows下 Memcahced.exe -d install [uninstall] Memcached.exe –d -m 50 –l 127.0.0.1 -p 11211 start 五、Memcached服务器的管理(启动) ...
本文将详细介绍如何在 Linux 系统下编译安装和基本使用 memcache。 首先,确保你的系统安装了必要的编译工具,如 GCC、Make、CMake、Autoconf 和 Libtool,可以通过 `yum install` 命令进行安装: ```bash yum ...