导航:首页 > 编程语言 > centosphpmemcached

centosphpmemcached

发布时间:2024-03-24 15:23:03

㈠ centos7+nginx+php+mysql怎样实现session会话

构建Tomcat集群
实现session共享之前首先得有一个集群环境,就像谈恋爱之前要先有个女朋友是一个道理,我们在/usr目录下创建一个/tomcat_cluster目录,并在这个目录中集群3个Tomcat,很简单就像这样:
这里写图片描述
然后我们一次修改这三个tomcat的端口,包括shutdown端口、http协议端口以及AJP协议端口。中间的不用说了,前后这两个端口是为了保证可以同时启动多个Tomcat,http端口我们分别修改为8081、8082和8083,接下来就可以着手开始配置session共享了。
Kyro序列化session
RT,首先memcached我的版本是1.4.25,在memcached对session的管理策略中,我们选择kyro,关于memcached-session-manager的版本我这里选择1.5.1,由于我们使用的是tomcat7所以还需要memcached-session-manager-tc7-1.5.1这个jar包。在此就不一一列举了,jar包版本很重要否则容易出现冲突,我这里把用到的所有jar包打包上传,用的时候直接把它们全部复制到tomcat目录下的lib目录即可,tomcat-7.0.57版本的话可以直接无脑覆盖,否则需要跳过重复的jar包,全部jar包的下载地址如下:
linux公社1号FTP服务器下载
------------------------------------------分割线------------------------------------------FTP地址:ftp //ftp1.linuxidc.com
用户名:ftp1.linuxidc.com
密码:www.linuxidc.com
在 2016年LinuxIDC.com\9月\Linux CentOS 7 下通过Memcached实现Session共享\下载方法见 http //www linuxidc.com/Linux/2013-10/91140.htm------------------------------------------分割线------------------------------------------下载完成后即可通过winscp来快速完成tomcat的jar包替换:
这里写图片描述
配置说明
jar包准备好的话就分别拷贝到我们集群的3个Tomcat的lib目录下,然后再分别修改每个Tomcat目录下的conf/context.xml文件,在其中添加memcached-session-manager的配置。因为我们这里集群了3台Tomcat,所以我们必须使用non-sticky模式,即采用非粘性session管理配置,配置文件如下:
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"memcachedNodes="n1:127.0.0.1:11211" //memcached服务器地址sticky="false" //注意一定是false
lockingMode="auto"
sessionBackupAsync="false"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"sessionBackupTimeout="1000"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"/>
memcached的默认端口号是11211,如果不确定的话可以通过netstat来查看,命令如下:
netstat -tunlp | grep memcached
这样就可以清楚的看到memcached所占用的端口:
这里写图片描述
没有其它问题的话就依次启动三个Tomcat,再启动Memcached,接着就可以测试session共享了。
测试
配完之后当然要测试一下了,准备一个最简单的java web项目:
这里写图片描述
在IDE创建一个web项目部署后再从tomcat拷贝出来即可,唯一需要改的就是index.jsp,我们看一下里面的代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
<%String sessid = request.getSession().getId();%>
sessionid=<%=sessid%><br/>
This is my JSP page 111111.
<br>
</body>
</html>
页面也很简单,只是加入了打印sessionid的代码,因为我们要根据sessionid去判断session是否一致,将这个项目分别拷贝至三个Tomcat的webapps目录下,为了做点区分最好再改一下静态文本,比如tomcat1下的是“This is my JSP page 111111.”,而tomcat2下的改为222222,同理tomcat3下的改为333333,项目传完后,依次启动这三个Tomcat,再启动memcached,通过浏览器访问看一下结果:
这里写图片描述
仔细观察一下运行结果,可以发现sessionid都是一致的,这也就很好的说明了我们成功的在这三个Tomcat之间共享了session。
总结
简单记录一下通过Memcached来实现session共享的全过程,希望对遇到同样问题的朋友有所帮助,The End。

㈡ php无法加载memcache模块

你的php的mencached扩展的版本是当前php版本可使用的不

㈢ Linux下安装Memcached服务器和客户端与PHP使用示例

本文实例讲述了Linux下安装Memcached服务器和客户端与php使用。分享给大家供大家参考,具体如下:
Memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度和可扩展性。
系统环境:CentOS
7.2
64位
Apache2.4.33
安装libevent依赖库
wget
https://github.com/downloads/libevent/libevent/libevent-2.0.15-stable.tar.gz
tar
-zxvf
libevent-2.0.15-stable.tar.gz
cd
libevent-2.0.15-stable
./configure
--prefix=/usr/local
make
sudo
make
install
安装Memcached服务器
wget
http://memcached.googlecode.com/files/memcached-1.4.9.tar.gz
tar
-zxvf
memcached-1.4.9.tar.gz
cd
memcached-1.4.9
./configure
--prefix=/usr/local/memcached
make
sudo
make
install
启动Memcache服务器:
/usr/local/memcached/bin/memcached
-d
-m
128
-u
root
-p
11211
安装Memcached客户端
wget
http://pecl.php.net/get/memcache-2.2.5.tgz
tar
-zxvf
memcache-2.2.5.tgz
cd
memcache-2.2.5
./configure
--enable-memcache
--with-php-config=/usr/bin/php-config
--with-zlib-dir
make
sudo
make
install
【make报错:
***
[memcache.lo]
Error
1】解决方法:
进入memcache安装目录,找到mamcache.c文件,将所有的zend_list_insert加上TSRMLS_CC,形如:zend_list_insert(pool,
le_memcache_pool
TSRMLS_CC);
客户端安装好之后,我们发现PHP扩展库中多了一个memcache.so
在PHP配置文件php.ini中加入该扩展:
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
重启服务器,通过输出phpinfo()查看该扩展相关信息
下面写一个简单的例子,实现memcache扩展与Memcached服务器的交互
<?php
$mc
=
new
Memcache();
//创建Memcache对象
$mc->connect("127.0.0.1",
11211);
//连接Memcached服务器
$mc->set('test','hello
world',0,10);
//存储数据
echo
$mc->get('test');
//获取数据
$mc->delete('test');
//删除数据
$mc->flush();
//强制刷新全部缓存,即清空Memcached服务器
$mc->close();
//断开与Memcached服务器的连接
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php缓存技术总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:linux下安装php的memcached客户端CentOS
5.4下的Memcache安装步骤(Linux+Nginx+PHP+Memcached)linux下安装memcached_动力节点Java学院整理Linux
下安装
memcached

memcacheq的方法在Linux服务器上安装
memcached的基本操作linux下编译安装memcached服务php模块memcache和memcached区别分析php扩展memcached和memcache的安装配置方法PHP
使用memcached简单示例分享PHP
MemCached高级缓存配置图文教程PHP
MemCached
高级缓存应用代码

阅读全文

与centosphpmemcached相关的资料

热点内容
火狐app拦截窗口如何解除 浏览:898
javaapichm下载 浏览:160
如何用代理服务器玩cf 浏览:997
java对象转jsonobject 浏览:368
怎么删除app里的更新提示 浏览:420
日月单片机 浏览:150
airports在安卓上如何查看电量 浏览:250
北京回收全新服务器硬盘云主机 浏览:515
php空间搭建ss 浏览:504
phparray转string 浏览:671
powermill编程培训班 浏览:491
pdf与word文档区别 浏览:59
MC你如何将材质包装进服务器 浏览:701
单片机的外文资料 浏览:547
什么是白盒加密算法 浏览:804
乐书pdf 浏览:427
a星寻路算法在3d中 浏览:137
抗震等级不同箍筋加密区范围不同 浏览:471
xshell上传文件命令 浏览:781
优先级队列java 浏览:156