apache+PHP使用memcached储存session信息

需求:

Apache使用php支持memcached储存session信息

**以下apache、php、memcached均使用yum方式安装,如有特殊需求使用源码包安装时,配置方式与此不同

关闭防火墙和SElinux安全机制

service iptables stop

setenforce 0

1.安装部署apache

使用系统自带的apache即可

修改apache配置文件以支持php

vim /etc/httpd/conf/httpd.conf

402 DirectoryIndexindex.html index.html.var index.php

启动apache

service httpd start

2.安装php

有特殊需求可用源码包安装,在此实验使用yum安装即可

yum -y install php php-devel

3.建立测试页面,测试apache与php的结合

vim /var/www/html/index.php

<?php

phpinfo();

?>

使用浏览器访问http://192.168.1.11,出现以下页面

4.安装部署memcached

使用yum方式安装

yum -y install memcached

#安装完成后执行: 
memcached -h 
#出现memcached帮助信息说明安装成功

Memcached的配置信息:

vim /etc/sysconfig/memcached 
#文件中内容如下,按需要修改: 
PORT="11211"         #端口 
USER="root"             #用户名 
MAXCONN="1024"         #最大连接数 
CACHESIZE="64"         #内存大小 
OPTIONS=""                 #附加参数

5.安装php支持memcached模块

需要安装libmemcached客户端库,php的扩展memcached模块,因为该扩展是依赖libmemcached的API

安装libmemcached客户端库

tar xf libmemcached-1.0.18.tar.gz

cd libmemcached-1.0.18

./configure -prefix=/usr/local/libmemcached -with-memcached

make &&make install

安装php的扩展memcached模块

tar xf memcached-2.2.0.tgz

cd memcached-2.2.0

/usr/bin/phpize   //先使用phpize命令生成一个configure文件

./configure-enable-memcached -with-php-config=/usr/bin/php-config -with-zlib-dir -with-libmemcached-dir=/usr/local/libmemcached -prefix=/usr/local/phpmemcached --disable-memcached-sasl

make &&make install

记录下安装成功后的提示,类似于:

Installing sharedextensions:     /usr/lib64/php/modules/

增加扩展extension配置文件

vim /etc/php.d/memcached.ini    //此配置文件需要手动创建

extension=memcached.so

执行php –m命令查看是否加载了memcached模块

6.启动apache和memcached

service httpd restart  //重启apache服务

/usr/bin/memcached  -u root -m 512M -n 10 -f 2 -d -vvv -c 512  //启动memcached服务

可以安装telnet服务测试一下memcached服务是否正常

yum –y install telnet

telnet localhost 11211

7.建立测试页,测试php是否支持memcached读取session信息

vim /var/www/html/memcached.php

<?php

session_start();

if(!isset($_SESSION[‘test‘])){

$_SESSION[‘test‘]= time();

}

print$_SESSION[‘test‘];

print"<br><br>";

print"SessionID: " . session_id();

?>

使用浏览器访问http://192.168.1.11/memcached.php,出现以下页面;

时间: 2024-07-30 00:48:17

apache+PHP使用memcached储存session信息的相关文章

PHP使用memcached储存session信息

文档信息: 文档作者:amun 文档版本:Version 1.1 修改记录:2017-05-15 系统环境:CentOS 6.5 64 bit 需求: 环境                                       ip                                      软件 Centos6.5_x64_64                   192.168.200.101               memcached libmemcached Ap

Memcached 笔记与总结(9)Memcached 与 Session

一.Memcached 存储 Session 由于 Memcached 是分布式的内存对象缓存系统,因此可以用来实现 Session 同步:把 Web 服务器中的内存组合起来,成为一个“内存池”,不管是哪个服务器产生的 Sessoin 都可以放到这个“内存池”中,其他的 Web 服务器都可以使用.使用 Memcached 来同步 Session 的优点是:不会加大数据库的负担,并且安全性比 Cookie 高,把 Session 放到内存里面,读取速度比其他处理方式要快很多. 自定义使用 Memc

(apache+tomcat集群+memcached番外篇)单台tomcat的session信息的2种持久化方式

为什么要实现搭建tomcat集群环境呢?主要因为单个tomcat无论从吞吐量和并发数上,会达到一定的极限.如果访问量超过单个tomcat的承受能力的话,tomcat一般要么拒绝提供服务,要么直接宕掉.所以,必须要依靠tomcat集群技术.举个最简单的例子,拿"送快件"比喻,如果一个人,5分钟送一件,一小时之内,送10个,一个人完全能胜任这项工作.假设现在到了双十一,要求1小时,送100个, 那怎么办?只能安排更多的人加入"送快件"这项工作中来.这其实和集群一个道理.

将tomcat的session信息保存在memcached中

一.简介 MSM(memcached-session-manager)支持tomcat6和tomcat7 ,利用Value(Tomcat 阀对Request进行跟踪.Request请求到来时,从memcached加载session,Request请求结束时,将tomcat session更新至memcached,以达到session共享之目的,支持sticky和 non-sticky 模式. Sticky 模式:tomcat session为主session, memcached为备sessio

16_构建memcached服务、LNMP+memcached、PHP的本地Session信息、PHP实现session共享

proxy   10.10.11.10client  10.10.11.11web1    10.10.11.12web2    10.10.11.13 proxy:1.构建memcached服务]# yum -y install memcached]# cat /etc/sysconfig/memcachedPORT="11211"USER="memcached"MAXCONN="1024"CACHESIZE="64"OPT

集群服务器Session同步及一种基于Memcached的session同步

1 Session的集群管理 事实上,网站总是有状态的.每一个登录信息.用户信息常常被存储在session内部.而当一个网站被部署在不止一台服务器的时候,就会遇到session同步的问题.事实上即使一个很小的网站,也要至少有两台服务器互为备份,分单流量是必须得,更重要的是无缝切流量升级.为了保证服务的不间断又要进行网站的维护升级,切流量是最简单的.那么如何保证切流量的时候session也会跟着同步过去呢?在集群环境下,大致有以下几种手段 1.1 Session复制 这是一种在早期应用系统中使用较

tomcat实现session集群及tomcat+memcached共享session存储(四)

接博客nginx或httpd实现负载均衡tomcat(三) tomcat实现会话管理原理及实现: tomcat管理会话使用的专用的会话管理组件,tomcat的会话管理器有4种: 1.标准会话管理器(StanderdManager) 2.持久会话管理器(PersistentManager可以基于文件存储(FileStore)或JDBC存储(JDBCStore)) 基于JDBC的话就可以实现高可用tomcat的session集群. 1.DeltaManager会话管理器 2.BackupManage

Tomcat基于MSM+Memcached实现Session共享

前言 在Tomcat集群中,当一个节点出现故障,其他节点该如何接管故障节点的Session信息呢?本文带来的解决方案是基于MSM+Memcached实现Session共享. 相关介绍 MSM MSM--Memcached Session Manager是一个高可用的Tomcat Session共享解决方案,除了可以从本机内存快速读取Session信息(仅针对黏性Session)外,同时可使用Memcached存取Session,以实现高可用. 工作原理 Sticky Session(黏性) 模式

tomcat cluster和tomcat+memcached实现Session会话保持

Tomcat Cluster: tomcat基于内存复制的集群,tomcat集群各节点通过建立tcp链接来实现session的复制,tomcat启动时,一个cluster对象(默认配置下是SimpleTcpCluster)会启动membership服务和Replication服务(用于建立tcp链接),membership服务记录了集群当前节点的信息,当一台节点接收http请求并产生一个新session时,调用Replication服务建立tcp连接把Session复制到membership列表