首页 运维 linux运维 linux下memcache如何安装配置

linux下memcache如何安装配置

May 18, 2023 am 11:28 AM
linux memcache

基本原理:

① 客户端第一次访问应用程序时,会到数据库(rdbms)中取出数据,返回给客户端;同时也将取出的数据保存到memcached中。
② 第二次访问时,因为数据已经缓存,就不用去数据库查询了,直接从memcached中取。

rdbms是文件型的数据库,最终还是以文件的形式保存在磁盘上;而memcached则不一样,它是key:value关系型的数据库,是保存在内存中的。内存的读写速度要比磁盘的读写速度快得多,前者是后者的10的6次方倍。

memcached是基于libevent的事件处理。libevent是个程序库,它将linux的epoll、bsd类操作系统的kqueue等事件处理功能封装成统一的接口。即使对服务器的连接数增加,也能发挥o(1)的性能。 memcached使用这个libevent库,因此能在linux、bsd、solaris等操作系统上发挥其高性能。关于事件处理这里就不再详细介绍,可以参考dan kegel的the c10k problem。

编译安装memcached

1、由于memcached是基于libevent的,因此需要安装libevent,libevent-devel

# yum install libevent libevent-devel -y

2、下载并解压memcached-1.4.6.tar.gz

memcached官方网站是:
# tar -xvzf memcached-1.4.6.tar.gz

3、编译安装memcached-1.4.6

# cd memcached-1.4.6
# ./configure --prefix=/etc/memcached
# make
# make install

4、配置环境变量(这一步可忽略...)

进入用户宿主目录,编辑.bash_profile,为系统环境变量ld_library_path增加新的目录,需要增加的内容如下:
# vi .bash_profile
memcached_home=/etc/memcached
export ld_library_path=$ld_library_path:$memcached_home/lib
刷新用户环境变量:# source .bash_profile

5、编写memcached服务启停脚本

# cd /etc/init.d
vi memcached,脚本内容如下:

#!/bin/sh
	#
	# startup script for the server of memcached
	#
	# processname: memcached
	# pidfile: /etc/memcached/memcached.pid
	# logfile: /etc/memcached/memcached_log.txt
	# memcached_home: /etc/memcached
	# chkconfig: 35 21 79
	# description: start and stop memcached service
	# source function library
	. /etc/rc.d/init.d/functions
	retval=0
	prog="memcached"
	basedir=/etc/memcached
	cmd=${basedir}/bin/memcached
	pidfile="$basedir/${prog}.pid"
	#logfile="$basedir/memcached_log.txt"
	ipaddr="192.168.1.200"		  # 绑定侦听的ip地址
	port="11211"					  # 服务端口
	username="root"				 # 运行程序的用户身份
	max_memory=64				  # default: 64m | 最大使用内存
	max_simul_conn=1024			 # default: 1024 | 最大同时连接数
	#maxcon=51200
	#growth_factor=1.3			 # default: 1.25 | 块大小增长因子
	#thread_num=6				  # default: 4
	#verbose="-vv"				  # 查看详细启动信息
	#bind_protocol=binary		  # ascii, binary, or auto (default)
	start() {
		echo -n $"starting service: $prog"
		$cmd -d -m $max_memory -u $username -l $ipaddr -p $port -c $max_simul_conn -p $pidfile
		retval=$?
		echo
		[ $retval -eq 0 ] && touch /var/lock/subsys/$prog
	}
	stop() {
		echo -n $"stopping service: $prog "
		run_user=`whoami`
			pidlist=`ps -ef | grep $run_user | grep memcached | grep -v grep | awk '{print($2)}'`
			for pid in $pidlist
			do
	#		  echo "pid=$pid"
				kill -9 $pid
				if [ $? -ne 0 ]; then
					return 1
				fi
			done
		retval=$?
		echo
		[ $retval -eq 0 ] && rm -f /var/lock/subsys/$prog
	}
	# see how we were called.
	case "$1" in
		start)
			start
			;;
		stop)
			stop
			;;
		#reload)
		#	reload
		#	;;
		restart)
			stop
			start
			;;
		#condrestart)
		#	if [ -f /var/lock/subsys/$prog ]; then
		#		stop
		#		start
		#	fi
		#	;;
		status)
			status memcached
			;;
		*)
			echo "usage: $0 {start|stop|restart|status}"
			exit 1
	esac
	exit $retval
登录后复制

6、赋予执行权限
#chmod +x memcached

7、设置memcached随系统启动

# chkconfig --add memcached
# chkconfig --level 35 memcached on
启动memcached
# service memcached start
//启动的时候实际上是调用了下面的这个命令,以守护进程的方式来启动memcached
/etc/memcached/bin/memcached -d -m 64 -u root -l 192.168.1.201 \
-p 11211 -c 1024 -p /etc/memcached/memcached.pid

查看memcached是否启动
# ps -ef | grep memcached

安装memcache的php扩展

1.在 选择相应想要下载的memcache版本。

2.安装php的memcache扩展

tar vxzf memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/php/bin/phpize
./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
make
make install

3.上述安装完后会有类似这样的提示:

installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

4.把php.ini中的extension_dir = “./”修改为

extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/”

5.添加一行来载入memcache扩展:extension=memcache.so

接下来重启php就可以了,可以通过phpinfo测试页面查看

以上是linux下memcache如何安装配置的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

vscode需要什么电脑配置 vscode需要什么电脑配置 Apr 15, 2025 pm 09:48 PM

VS Code 系统要求:操作系统:Windows 10 及以上、macOS 10.12 及以上、Linux 发行版处理器:最低 1.6 GHz,推荐 2.0 GHz 及以上内存:最低 512 MB,推荐 4 GB 及以上存储空间:最低 250 MB,推荐 1 GB 及以上其他要求:稳定网络连接,Xorg/Wayland(Linux)

Linux体系结构:揭示5个基本组件 Linux体系结构:揭示5个基本组件 Apr 20, 2025 am 12:04 AM

Linux系统的五个基本组件是:1.内核,2.系统库,3.系统实用程序,4.图形用户界面,5.应用程序。内核管理硬件资源,系统库提供预编译函数,系统实用程序用于系统管理,GUI提供可视化交互,应用程序利用这些组件实现功能。

vscode终端使用教程 vscode终端使用教程 Apr 15, 2025 pm 10:09 PM

vscode 内置终端是一个开发工具,允许在编辑器内运行命令和脚本,以简化开发流程。如何使用 vscode 终端:通过快捷键 (Ctrl/Cmd ) 打开终端。输入命令或运行脚本。使用热键 (如 Ctrl L 清除终端)。更改工作目录 (如 cd 命令)。高级功能包括调试模式、代码片段自动补全和交互式命令历史。

git怎么查看仓库地址 git怎么查看仓库地址 Apr 17, 2025 pm 01:54 PM

要查看 Git 仓库地址,请执行以下步骤:1. 打开命令行并导航到仓库目录;2. 运行 "git remote -v" 命令;3. 查看输出中的仓库名称及其相应的地址。

notepad怎么运行java代码 notepad怎么运行java代码 Apr 16, 2025 pm 07:39 PM

虽然 Notepad 无法直接运行 Java 代码,但可以通过借助其他工具实现:使用命令行编译器 (javac) 编译代码,生成字节码文件 (filename.class)。使用 Java 解释器 (java) 解释字节码,执行代码并输出结果。

vscode在哪写代码 vscode在哪写代码 Apr 15, 2025 pm 09:54 PM

在 Visual Studio Code(VSCode)中编写代码简单易行,只需安装 VSCode、创建项目、选择语言、创建文件、编写代码、保存并运行即可。VSCode 的优点包括跨平台、免费开源、强大功能、扩展丰富,以及轻量快速。

Linux的主要目的是什么? Linux的主要目的是什么? Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服务器操作系统,2.嵌入式系统,3.桌面操作系统,4.开发和测试环境。Linux在这些领域表现出色,提供了稳定性、安全性和高效的开发工具。

vscode终端命令不能用 vscode终端命令不能用 Apr 15, 2025 pm 10:03 PM

VS Code 终端命令无法使用的原因及解决办法:未安装必要的工具(Windows:WSL;macOS:Xcode 命令行工具)路径配置错误(添加可执行文件到 PATH 环境变量中)权限问题(以管理员身份运行 VS Code)防火墙或代理限制(检查设置,解除限制)终端设置不正确(启用使用外部终端)VS Code 安装损坏(重新安装或更新)终端配置不兼容(尝试不同的终端类型或命令)特定环境变量缺失(设置必要的环境变量)

See all articles