tomcat使用memcached完成集群(session共享实现方式)

memcached 用的的jar包 memcached session共享用到的jar包 memcached-2.5.jar spymemcached-2.7.3.jar memcached-session-manager-tc6-1.5.1.jar memcached-session-manager-1.5.1.jar msm-kryo-serializer-1.6.4.jar kryo-1.03.jar 立即下载

一.安装memcached

1.windows下安装memcached

需要到一个网站下载memcached的for win 32版本.在memcached的官方网站我是找不到的.我看了下,提供win版下载的是一个个人网站,老外的.应该是他自己用src编译的.

下载到只有几十K大小(我也吓了跳,还以为是病毒).安装后确实能用.我尝试在本帖提供附件下载.

下载后输入命令安装命令:

c:\memcached\memcached.exe -d install

然后再输入如下命令把其作为win service常驻启动:

c:\memcached\memcached.exe -d start

其他详细的并没做了,因为部署在win上只是暂时开发测试用的,最终会部署在linux版本上.

2.linux下安装memcached

1.下载包

1.1.到http://memcached.org/下载linux下的memcached的安装包.

1.2.到http://libevent.org/ 下载安装memcached前比需要的包libevent-2.0.15 我安装的是这个版本.

2.安装libevent-2.0.15

如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。(网上照搬.中间我只是出现过没有GCC的情况)

3.安装memcached

tar zxvf memcached-1.4.2.tar.gz

  cd memcached-1.4.2

  ./configure  --with-libevent=/usr

  make

  make install

如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcached放到 /usr/local/bin/memcached ,

4.测试是否成功安装memcached:

# ls -al /usr/local/bin/mem*

成功的话,会输出一些相关信息。 


5.启动memcached

网上有一个命令很长的方法,可以我启动后进程是出现了,但就是不监听11211的端口.继续寻找终于找到一个可行的了.2个命令如下:

5.1我使用的,可行的命令

memcached -d -m 128 -l localhost -p 11211 -u root  (其中Localhost是指监听本机器的端口.)

5.2网上很多,但我使用却失败的命令

/usr/local/bin/memcached -d -m 10 -u root -l localhost -p 12000 -c 256 -P /tmp/memcached.pid


6.给出memcached启动命令参数详解.

-d选项是启动一个守护进程,

-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,

-u是运行Memcache的用户,我这里是root,

-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,

-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,

-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,

-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,

-p 使用的TCP端口。默认为11211

-m 最大内存大小。默认为64M

-vv 用very vrebose模式启动,调试信息和错误输出到控制台

-d 作为daemon在后台启动

如果要结束Memcache进程,执行:

# kill `cat /tmp/memcached.pid`

或是 通过ps -ef | grep memcached 找到pid ,然后kill

也可以启动多个守护进程,不过端口不能重复。

# ps -ef | grep memcached

root 28914 1 0 07:27 ? 00:00:00 memcached -d -m 128 -l localhost -p 11211 -u root (启动ok)

6.测试memcached

#telnet localhost 11211

Trying 127.0.0.1...

Connected to localhost.localdomain (127.0.0.1).




二.调用的包

可从http://code.google.com/p/memcached-session-manager/downloads/list下载所需要的包.

需要注意的是,你只能从该网站下载到 memcached-session-manager-1.5.1.jar  /  memcached-session-manager-tc6-1.5.1.jar  /  msm-javolution-serializer-1.5.1.jar

这3个包,还有2个包分别是 : memcached-2.5.jar  /  javolution-5.5.1.jar这2个包,需要自己另外下载哦.

都是放到tomcat/lib下.


三.环境

本人使用的是tomcat6 + memcached-session-manager,首先是在windows下测试的.以后将部署在Linux环境下


四.TOMCAT配置

网上有好多的版本,甚至在memcached-session-manager的wiki中都是在tomcat的conf/context.xml下配置.

但本人是在server.xml中配置到需要session共享的host中.配置见如下:


如果是一个memcached,采用如下配置:

<Context reloadable="false" path="" > 
				 <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
					memcachedNodes="n1:192.168.1.101:11211"
					sticky="false"
					sessionBackupAsync="false"
					lockingMode="auto"
					requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
					transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"
					/>
			</Context>

如果是多个memcached,采用如下配置:

<Context reloadable="false" path="" > 
				 <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
					memcachedNodes="n1:192.168.1.101:11211,n2:192.168.1.102:11211"
					sticky="false"
					sessionBackupAsync="false"
					lockingMode="auto"
					requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
					transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"
					/>
			</Context>

.

de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory采用的序列化方式是kryo,根据官方提供的数据,这个的序列化效率是最好的,我下面有一些简单的测试。


感觉kryo的效率主要体现在高并发下面。如果非高并发感觉跟java的自带io差不多。如果不使用kryo进行序列化,采用java默认方式的话,请将transcoderFactoryClass改为:de.javakaffee.web.msm.JavaSerializationTranscoderFactory

另外在使用kryo进行序列话的时候,有时候会报序列话错误。具体解决方式,查看一篇博文:http://hi.baidu.com/drnadmhzfnacefe/item/87cead68940ef408a1cf0fa2。

五.测试结果

无论你从哪个tomcat浏览该jsp的打印信息(只要不关浏览器或者浏览器的标签),获得的session id都是一样的,证明是同一个session,并且共享了.


然后启动你的多个测试tomcat吧...关于memcached的安装.本文不提供.但会另外写文章叙述.


转自:

http://blog.youkuaiyun.com/ichsonx/article/details/6911358

http://hi.baidu.com/drnadmhzfnacefe/item/87cead68940ef408a1cf0fa2


tomcat-7.0.54配合使用的memcached-session-manager1.6.1的整套jar包 tomcat-7.0.54配合使用的memcached-session-manager-1.6.1的整套jar包 立即下载

相关推荐

Memcached-session-manager使用说明及相关jar包(tomcat7版)

Memcached-session-manager使用说明及相关jar包(tomcat7版) 依照文档部署即可实现多服务器多tomcat session共享,jar包中是tomcat7集成所需要的jar包,序列化工具用的是java默认的序列化工具,若要使用其他版本的tomcat或其他的序列化工具,更具文档自己替换jar包即可,附赠memcache操作指南

Tomcat集群--基于Memcached的Session共享

一、需求     Tomcat部署多节点,实现Web应用高可用性,去除Web服务单点故障的隐患,目前可以考虑的方案一般有以下几种:     1. 使用Tomcat自带的Cluster方式,多个Tomcat间自动实时复制Session信息,根据官网提供配置文档即可实现,配置起来简单,但是这个方案效率比较低,在高并发的下表现并不好     2. 利用Nginx的基于访问IP的hash路由

瀧とJava技朮抟孄 1104

MSM--memcached session manager(memcached+tomcat7共享session所需jar包)

MSM--memcached session manager是一个高可用的Tomcat session共享解决方案,除了可以从本机内存快速读取Session信息(仅针对黏性Session)外,同时可使用memcached存取Session,以实现高可用。对于非黏性Session,memcached直接存储session。本lib包包含:javolution-5.5.1.jar、kryo-1.03.jar、kryo-serializers-0.10.jar、memcached-2.5.jar、memcached-session-manager-1.5.1.jar、memcached-session-manager-tc7-1.5.1.jar、minlog-1.2.jar、msm-javolution-serializer-1.5.1.jar、msm-kryo-serializer-1.6.4.jar、reflectasm-0.9.jar、spymemcached-2.7.3.jar

通过Memcached 服务实现 Session 共享

通过Memcached实现Session共享全流程详解,从配置yum源开始超详细,包含免费资源包可提取

weixin_71806212的博客 940

memcached-session-manager-1.6.3.jar

memcached-session-manager-1.6.3.jar

网易 广州 梦幻西游端游 客户端社招笔试题 2024

4道算法题,时间2小时,牛客网笔试注:采用OJ模式,需要自己处理输入、输出。

z2014z的博客 1812

memcache+tomcat+nginx实现负载均衡及session共享

一、部署 环境介绍 server1:memcache,tomcat,nginx server2:tomcat,memcache 所需的软件包 apache-tomcat-8.5.24.tar.gz tomcat8_memcache_session.jar.zip jdk-7u79-linux-x64.tar.gz 安装tomcat tomcat要在java环境下,所以要安装jdk 安装jdk ...

oikinkl的博客 556

晶体管的 栅极gate 材料选用 多晶硅polysilicon,并采用 自对准工艺 self-aligned IC后端版图 【VLSI】

本文为了解决为什么要使用多晶硅作栅极触点的问题,先介绍了MOS管的工作原理是通过栅极上所加的电压控制漏极与源极之间电流,然后解释了栅极的材料为什么选用多晶硅,然后介绍了晶体管里栅极的自对准工艺(Self-Aligned Gate )。

Jie_MSD的博客 1万+

关于分布式WEB 的session共享(memcached+tomcat)

分布式的WEB 的session 共享方式之一。利用mencached,把session序列化,存放在缓存中,实现分布式共享。1.tomcat 中,需要安装对应相关的JAR包。memcached-2.6.jar(http://spymemcached.googlecode.com/files/memcached-2.6.jar)javolution-5.4.3.1.jarmemcached-sess

walle167的博客 502

Hi3516CV610 YOLOv8模型转换与部署实战:从源码到板端推理全流程解析

本文详细解析了将YOLOv8模型部署到Hi3516CV610开发板的全流程。内容涵盖从Ubuntu环境搭建、模型获取与验证,到关键的PyTorch模型转换为ONNX格式,并利用海思工具链量化生成板端可执行的.wk文件。最后,指导开发者编写板端C程序,完成视频流处理、NNIE推理及结果后处理,并提供了部署调试与性能优化的实用技巧。

weixin_29215815的博客 266

Zemax热分析实战:多重结构编辑器与操作数优化技巧

本文详细介绍了在Zemax中进行热分析的全流程,重点讲解了如何利用多重结构编辑器模拟不同温度环境,并通过TENP、CRVT、THIC等关键操作数建立热膨胀模型。文章结合双胶合透镜实例,阐述了如何设置热跟随、构建多温度评价函数,并运用锤型优化提升光学系统在全温度范围内的热稳定性与成像质量。

yog99的博客 575

memcached tomcat 共享session

要求两个tomcat共用一个session,可以引用外部缓存(memcached),将session统一放在memcached里面,这样的话,两个tomcat就共用一个session,问题解决了。    下面是我做的一些实验: 1、先做好准备工作      将要用的的工具找到:memcached.exe、tomcat6      用到的包:memcached-session-manager-1.5

写博客只为学习 265

100天精通Python(可视化篇)——第98天:Pyecharts绘制多种炫酷日历图参数说明+代码实战

一、日历图介绍 二、基础配置 1. 配置项类 2. 添加函数 3. 日期标签配置 4. 坐标系配置 三、日历图实战 1. 基础日历图 2. 日历热图

努力让自己发光,对的人才能迎着光而来 2万+

tomcat使用memcached完成集群

一.安装memcached 1.windows下安装memcached 需要到一个网站下载memcached的for win 32版本.在memcached的官方网站我是找不到的.我看了下,提供win版下载的是一个个人网站,老外的.应该是他自己用src编译的. 下载到只有几十K大小(我也吓了跳,还以为是病毒).安装后确实能用.我尝试在本帖提供附件下载. 下载后输入命令安装命令:

ichsonx的专栏 1万+

C# 上位机高级功能实战:报警、历史回放与远程监控

本文介绍了工业上位机系统的高级功能实现,主要包括实时报警机制、历史数据回放和远程监控三部分。报警功能通过阈值检测实现异常提醒;历史回放利用数据库存储数据,通过定时器控制回放进度;远程监控提供TCP、WebSocket等多种数据传输方式。文章还给出了综合优化建议,如异步处理、报警去抖动等,最终形成一个包含数据采集、显示、存储、报表及高级功能的完整工业自动化闭环系统。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 749

OpenClaw小白使用全攻略

OpenClaw全能技能解锁指南:从基础到进阶 摘要: 本文提供OpenClaw AI智能体的完整使用教程,帮助用户从安装后"不知道如何用"到熟练掌握核心功能。教程包含:1)控制台5大区域详解和3个必做初始化设置;2)文件管理、浏览器自动化、文档生成等5大基础功能实操,每个功能配有详细操作步骤、指令模板和效果演示;3)10+高频场景解决方案,如整理文件、搜集资料、写总结等;4)进阶技巧和常见问题解答。通过清晰的图文指引,即使电脑小白也能快速上手,实现办公自动化、提升工作效率。

通俗易懂学IT 3057

Tomcat通过Memcached实现session共享

对于web应用集群的技术实现而言,最大的难点就是:如何能在集群中的多个节点之间保持数据的一致性,会话(Session)信息是这些数据中最重要的一块。要实现这一点, 大体上有两种方式: 一种是把所有Session数据放到一台服务器上或者数据库中,集群中的所有节点通过访问这台Session服务器来获取数据; 另一种就是在集群中的所有节点间进行Session数据的同步拷贝,任何一个节点均保存了所有的Session数据。 在集群系统下实现session统一的有如下几种方案: 1) 请求精确定位:session s

weixin_42073629的博客 1416

【Claude Code 源码解析教程】第4章:QueryEngine 查询引擎

本章深入解析 Claude Code 的核心引擎——QueryEngine,它是整个对话系统的"心脏",负责管理会话状态、消息处理流程和多轮对话支持。

rengang66的博客 269

memcached实现tomcat集群的session共享

memcached实现tomcat集群的session共享 测试环境:windwos 64位系统 测试内容:Apache服务器做反向代理以实现集群的负载均衡,Tomcat做服务器集群,并用Memcach实现集群内的Session共享 测试工具:Apache2.2,Tomcat7.0.54,memcached 1.4   一.软件准备 首先是下载Apache2.2版本,可以去http

u011289922的博客 633

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Memcached-Session-Manager多tomcat实现session跨域共享配置

Memcached-Session-Manager多tomcat实现session跨域共享配置 当高并发出现的时候,我们通常想到的是使用nginx配置负载均衡来实现对多个服务器(tomcat部署应用)的iphash来处理,这样的场景下 同一个应用服务部署在多个tomcat集群下,高并发访问的时候通过nginx分发实现负载均衡在实际应用中非常好的解决当个应用难于超负荷承载高并发访问的缺陷,但是多tom

三片叶子的修行日记 2437

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

NGINX + TOMCAT7 + MEMCACHED 实现SESSION 共享

2、环境:      host1:192.168.163.189/24 tomcat189      host2:192.168.163.190/24 tomcat190      host3:192.168.163.191/24 nginx

What's the happiness? 3659

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

上一篇: Tomcat中的Grails应用集群
下一篇: terracotta安装配置与集群过程
欧德曼
博客等级 码龄19年 63粉丝 82原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值