magent+memcached
一.软件下载
wget http://memcached.googlecode.com/files/memcached-1.4.13.tar.gz
wget http://memagent.googlecode.com/files/magent-0.6.tar.gz
wget http://monkey.org/~provos/libevent-1.4.9-stable.tar.gz
二。安装libevent-1.4.9-stable.tar.gz
tar zxvf libevent-2.0.13-stable.tar.gz
cd libevent-2.0.13-stable
./configure --with-libevent=/usr
make
make install
三。安装memcacd
tar zxvf memcached-1.4.13.tar.gz
cd memcached-1.4.13
./configure --with-libevent=/usr
make
make install
四。安装magent
tar zxvf magent-0.6.tar.gz
make
报错1:
gcc -Wall -g -O2 -I/usr/local/include -m64 -c -o magent.o magent.c
magent.c: In function 'writev_list':
magent.c:729: error: 'SSIZE_MAX' undeclared (first use in this function)
magent.c:729: error: (Each undeclared identifier is reported only once
magent.c:729: error: for each function it appears in.)
make: *** [magent.o] Error 1
解决办法:
[root@centos6 memcached]# vi ketama.h
#在开头加入
#ifndef SSIZE_MAX
#define SSIZE_MAX 32767
#endif
继续make
报错2:
gcc -Wall -g -O2 -I/usr/local/include -m64 -c -o magent.o magent.c
gcc -Wall -g -O2 -I/usr/local/include -m64 -c -o ketama.o ketama.c
gcc -Wall -g -O2 -I/usr/local/include -m64 -o magent magent.o ketama.o /usr/lib64/libevent.a /usr/lib64/libm.a
gcc: /usr/lib64/libevent.a: No such file or directory
gcc: /usr/lib64/libm.a: No such file or directory
解决办法:
[root@centos6 memcached]# ln -s /usr/lib/libevent* /usr/lib64/
[root@centos6 memcached]# make
报错3:
gcc -Wall -g -O2 -I/usr/local/include -m64 -o magent magent.o ketama.o /usr/lib64/libevent.a /usr/lib64/libm.a
gcc: /usr/lib64/libm.a: No such file or directory
make: *** [magent] Error 1
解决办法:
yum install glibc glibc-devel
如果是64bit的系统则不会在/usr/lib64/libm.a 生成,如果是32bit即会有。
[root@centos6 memcached]# cp /usr/lib64/libm.so /usr/lib64/libm.a
继续make
报错4:
gcc -Wall -g -O2 -I/usr/local/include -m64 -o magent magent.o ketama.o /usr/lib64/libevent.a /usr/lib64/libm.a
/usr/lib64/libevent.a(event.o): In function `detect_monotonic':
event.c:(.text+0xc79): undefined reference to `clock_gettime'
/usr/lib64/libevent.a(event.o): In function `gettime':
event.c:(.text+0xd60): undefined reference to `clock_gettime'
collect2: ld returned 1 exit status
make: *** [magent] Error 1
解决办法:
[root@centos6 memcached]# vi Makefile
CFLAGS = -Wall -g -O2 -I/usr/local/include $(M64)
改为:
CFLAGS = -lrt -Wall -g -O2 -I/usr/local/include $(M64)
[root@centos6 memcached]# make
gcc -Wall -g -O2 -I/usr/local/include -m64 -o magent magent.o ketama.o -lrt /usr/lib64/libevent.a /usr/lib64/libm.a
[root@centos6 memcached]# ls 成功
Makefile ketama.c ketama.h ketama.o magent magent-0.6.tar.gz magent.c magent.o
[root@centos6 memcached]# cp magent /usr/bin/
五。启动进程
memcached启动参数描述:
-d :启动一个守护进程,
-m:分配给Memcache使用的内存数量,单位是MB,默认是64MB,
-u :运行Memcache的用户
-l :监听的服务器IP地址
-p :设置Memcache监听的端口,默认是11211 注:-p(p为小写)
-c :设置最大并发连接数,默认是1024
-P :设置保存Memcache的pid文件 注:-P(P为大写)
如果要结束Memcache进程,执行:kill cat pid文件路径
[root@centos6 memcached]# memcached -m 10 -u root -d -l 0.0.0.0 -p 11211
[root@centos6 memcached]# memcached -m 10 -u root -d -l 0.0.0.0 -p 11212
[root@centos6 memcached]# memcached -m 10 -u root -d -l 0.0.0.0 -p 11213
[root@centos6 memcached]# netstat -antp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 12296/memcached
tcp 0 0 0.0.0.0:11212 0.0.0.0:* LISTEN 12412/memcached
tcp 0 0 0.0.0.0:11213 0.0.0.0:* LISTEN 12419/memcachcd
magent启动
[root@centos6 memcached]# magent -u root -n 51200 -l 192.168.20.122 -p 12000 -s 127.0.0.1:11211 -s 127.0.0.1:11212 -b 127.0.0.1:11213
分别在127.0.0.1机器的11211,11212,11213端口启动3个Memcached进程,在12000端口开启magent代理程序;(以此类推可在不同机器上启动memcached)
11211和11212为主Memcached,11213为备份Memcached;
[root@centos6 memcached]# telnet 192.168.20.159 12000
Trying 192.168.20.159...
Connected to 192.168.20.159.
Escape character is '^]'.
stats
memcached agent v0.6
matrix 1 -> 127.0.0.1:11211, pool size 0
matrix 2 -> 127.0.0.1:11212, pool size 0
matrix 3 -> 127.0.0.1:11213, pool size 0
END
六。安装php的memcache客户端
下载
wget http://pecl.php.net/get/memcache-2.2.6.tgz
安装
tar zxvf memcache-2.2.6.tgz -C /usr/src/
cd /usr/src/memcache-2.2.6/
ls
/usr/local/php/bin/phpize
./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
make && make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/ 出现该行安装成功
修改php.ini
[root@LNMP4 memcache-2.2.6]# vi /usr/local/php/etc/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/" 该行修改
extension = memcache.so 该行添加
http://hi.baidu.com/ghhryr/item/6bc810a0a02c65a228ce9d4c
相关推荐
**Android依赖注入库Magnet详解** 在Android应用开发中,依赖注入(Dependency Injection,简称DI)是一种设计模式,它能够帮助我们实现代码的解耦,提高可测试性和可维护性。Magnet是一款专为Android平台设计的轻...
### PPPD 进程详解 #### 一、概述 在深入了解`pppd`源码流程之前,我们首先简要了解一下PPP(Point-to-Point Protocol)协议。PPP是一种数据链路层协议,主要用于通过拨号或专用线路连接两个网络节点。它提供了一...
### Lighttpd简单配置知识点详解 #### 一、Lighttpd简介 Lighttpd是一款开源的Web服务器软件,以其轻量级、低内存消耗而著称。它支持SSL/TLS加密连接、URL重写等高级功能,适用于中小型网站或者作为反向代理服务器...
【UM4092】ST电机控制库详解中英文2.0和英文1.0.zip这个压缩包聚焦于ST Microelectronics(意法半导体)提供的电机控制库,特别针对FOC(Field-Oriented Control,磁场定向控制)技术在PMSM(Permanent Magnet ...
《Android开发工具详解》 Android开发工具(Android Development Tools,简称ADT)是Google为开发者提供的集成开发环境,用于创建、测试和调试Android应用程序。它包含了一系列必要的组件和功能,帮助开发者高效地...
### HotSpot实战知识点详解 #### 一、HotSpot虚拟机简介 HotSpot 是一款高性能的 Java 虚拟机 (JVM),由 Sun Microsystems 开发并随后被 Oracle 公司收购。HotSpot 虚拟机是当前最流行的 JVM 实现之一,广泛应用于...
开发者可以通过`build.sbt`或`project/build.properties`文件来配置项目信息和依赖关系。例如,`build.sbt`文件可以包含如下内容: ```scala name := "MyScalaProject" version := "1.0" scalaVersion := "2.12.8...
《lighttpd-1.4.20-cmake:轻量级HTTP服务器的构建与配置详解》 在互联网服务领域,HTTP服务器是不可或缺的一部分,它们负责处理来自客户端的HTTP请求并返回相应的网页内容。其中,lighttpd因其轻量、高效、安全的...
**sbt-0.13.17:Scala构建工具详解** `sbt-0.13.17` 是一个重要的版本更新,它是Scala Build Tool(sbt)的一个发行版,用于管理、构建和打包Scala及Java项目。sbt是基于Apache 2.0许可的开源工具,它为开发人员...
《Ansys电机热Fluent分析设置详解》 Ansys Fluent是一款强大的流体动力学分析工具,常用于解决复杂的热管理问题,特别是在电机设计中。在电机的热分析中,准确的设置是确保仿真结果可靠的关键。以下将详细介绍如何...
- 探讨了工具链的使用,例如集成开发环境(IDE)、配置工具等。 - 讨论了STM32 FOC SDK 4.0的新架构特点。 - 涉及了电流检测的方法和技术。 - 分析了如何测量电机参数。 - 讲解了无传感器算法,特别是高频注入(HF...
《基于Matlab的电机PMSM在线仿真模型详解》 电机是现代工业系统中的核心元件,而永磁同步电机(Permanent Magnet Synchronous Motor, PMSM)因其高效、高精度的特点,广泛应用于电动汽车、伺服驱动等领域。在设计、...
2. **恢复断点续传**:如果下载过程中因网络问题中断,FDM可以记住已下载的部分,稍后从断点处继续下载,避免了重新开始的麻烦。 3. **智能调度**:FDM可以根据网络状况自动调整下载速度,平衡下载与在线活动,确保...
《永磁同步电机模型仿真与SVPWM控制技术详解》 永磁同步电机(PMSM,Permanent Magnet Synchronous Motor)作为一种高效的电动机类型,在工业、汽车和家用电器等领域广泛应用。PMSM的关键优势在于其高效率、高功率...
《电子政务中的分极式永磁交流电机技术详解》 在信息化时代,电子政务作为政府公共服务的重要组成部分,正日益发挥着不可替代的作用。而在电子政务系统中,高效、可靠的硬件设备是支撑其运行的关键,其中分极式永磁...
《永磁同步电机(PMSM)的PI双闭环控制系统详解》 永磁同步电机(Permanent Magnet Synchronous Motor,简称PMSM)是现代工业控制领域广泛应用的一种高性能电机,其优势在于高效率、高功率密度以及宽调速范围。在本...
**PMLSM模型详解** **一、PMLSM( Permanent Magnet Linear Synchronous Motor)简介** PMLSM,即永磁直线同步电机,是一种特殊的电动机,它能够将电磁力直接转化为直线运动,广泛应用于高速直线驱动系统,如高速...
【Azureus开源浏览插件详解】 Azureus,也被称为Vuze,是一款基于Java的BitTorrent客户端,它提供了丰富的功能和高度可定制性。这个“BrowseAzureus”插件是为Azureus用户设计的,旨在增强其Web访问能力,让用户...
特别是对于异步电机和正弦永磁同步电机(Permanent Magnet Synchronous Motor, PMSM)的调速系统而言,SPWM技术因其高效能和良好的动态特性而成为首选。SPWM通过调整脉冲宽度来模拟正弦波形,进而实现对电机转速的...