使用nginx负载 多个tomcat 如何实现session共享?

share_code 发布于 2011/05/03 09:33
阅读 10K+
收藏 9

oschina 上的各位大侠们 , 给我点解决方案的建议,或者 具体的实现方案吧 详细最好 使用nginx负载 多个tomcat 如何实现session共享,搞了好长时间没有成功,在网上也看了一些关于这方面的资料, 测试的时候也是失败的。 除了这个memcached

还有其他的决定方案吗 ? 还有一个 nginx 搭配几个tomcat 才能对 5K ~1W 的并发进行负载, 小弟经验不足,请大家多多指教呀。 多谢各位呢,  

注明 : 解决问题,送油卡!

加载中
0
红薯
红薯

解决思路:

1. Tomcat 的 SEssion 复制,基于 memcached,

详情:http://www.oschina.net/p/memcached-session-manager

2. Nginx 的 Session Sticky

http://www.oschina.net/p/nginx_upstream_jvm_route

两种方案都不是很成熟,但技术上是可行的。

最佳方案,不要用 session。

0
JavaGG
JavaGG

最佳方案,不要用 session

0
霖vv
霖vv

不用session

用  分布式的缓冲 系统提供的功能来代替。

0
share_code
share_code

不用session的话 比如要保持用户对象的状态 如果解决 ,是不是在request 域中向下继续传递用户ID 然后再查出来?

0
红薯
红薯

引用来自#5楼“张广”的帖子

不用session的话 比如要保持用户对象的状态 如果解决 ,是不是在request 域中向下继续传递用户ID 然后再查出来?

用cookie存储用户id,然后再查出来

不过还需要再加上一个自己设计的加密串,防止有人伪造cookie

0
share_code
share_code

把用户ID 进行加密 然后保存到cookie  然后用的时候从Cookie里面拿出来 在进行解密 在使用 ,这样我应该会了 ,呵呵 谢谢

0
share_code
share_code

引用来自#6楼“红薯”的帖子

引用来自#5楼“张广”的帖子

不用session的话 比如要保持用户对象的状态 如果解决 ,是不是在request 域中向下继续传递用户ID 然后再查出来?

用cookie存储用户id,然后再查出来

不过还需要再加上一个自己设计的加密串,防止有人伪造cookie

把用户ID 进行加密 然后保存到cookie  然后用的时候从Cookie里面拿出来 在进行解密 在使用 ,这样我应该会了 ,呵呵 谢谢

还有一个 nginx 搭配几个tomcat 才能对 5K ~1W 的并发进行负载。 一般是不是都是前面都是一个nginx ?

0
红薯
红薯

引用来自#8楼“张广”的帖子

引用来自#6楼“红薯”的帖子

引用来自#5楼“张广”的帖子

不用session的话 比如要保持用户对象的状态 如果解决 ,是不是在request 域中向下继续传递用户ID 然后再查出来?

用cookie存储用户id,然后再查出来

不过还需要再加上一个自己设计的加密串,防止有人伪造cookie

把用户ID 进行加密 然后保存到cookie  然后用的时候从Cookie里面拿出来 在进行解密 在使用 ,这样我应该会了 ,呵呵 谢谢

还有一个 nginx 搭配几个tomcat 才能对 5K ~1W 的并发进行负载。 一般是不是都是前面都是一个nginx ?

这个要根据业务功能具体做压力测试才能知道,你把应用跑起来,自己做一个压力测试吧

0
share_code
share_code

引用来自#9楼“红薯”的帖子

引用来自#8楼“张广”的帖子

引用来自#6楼“红薯”的帖子

引用来自#5楼“张广”的帖子

不用session的话 比如要保持用户对象的状态 如果解决 ,是不是在request 域中向下继续传递用户ID 然后再查出来?

用cookie存储用户id,然后再查出来

不过还需要再加上一个自己设计的加密串,防止有人伪造cookie

把用户ID 进行加密 然后保存到cookie  然后用的时候从Cookie里面拿出来 在进行解密 在使用 ,这样我应该会了 ,呵呵 谢谢

还有一个 nginx 搭配几个tomcat 才能对 5K ~1W 的并发进行负载。 一般是不是都是前面都是一个nginx ?

这个要根据业务功能具体做压力测试才能知道,你把应用跑起来,自己做一个压力测试吧

红薯大哥一般都用什么进行测压? loadrunner ?

0
剑啸枫
剑啸枫

引用来自#6楼“红薯”的帖子

引用来自#5楼“张广”的帖子

不用session的话 比如要保持用户对象的状态 如果解决 ,是不是在request 域中向下继续传递用户ID 然后再查出来?

用cookie存储用户id,然后再查出来

不过还需要再加上一个自己设计的加密串,防止有人伪造cookie

安全性要求高的还是用session好~

返回顶部
顶部