起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6047|回复: 9

[结贴] redis session共享后,sessionid是否可以自定义,同时支持

[复制链接]

1014

主题

4371

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10977
QQ
发表于 2020-11-4 09:07:59 | 显示全部楼层 |阅读模式
1、redis session共享后,excel上传无法使用,因为excel上传会有两个请求,造成第二次请求无法找到上传的excel文件;
2、redis session共享后,sessionid是否可以自定义,同时支持session粘贴;
3、redis session共享参考贴是:http://docs.wex5.com/bex5-deploy-question-list-10054/

孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案

1014

主题

4371

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10977
QQ
 楼主| 发表于 2020-11-4 13:49:13 | 显示全部楼层
redis session方式生成的sessionid是否可以这样:xxx.tomcat2
孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2020-11-4 14:35:53 | 显示全部楼层
1.excel上传具体指的什么?excel导入组件吗?报错把完整的错误信息发一下
2.redis session共享后,sessionid是否可以自定义,同时支持session粘贴;
redis session方式生成的sessionid是否可以这样:xxx.tomcat2
这个不是平台控制的,就是redis标准的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
发表于 2020-11-5 08:43:18 | 显示全部楼层
ecoolper 发表于 2020-11-4 13:49
redis session方式生成的sessionid是否可以这样:xxx.tomcat2

你们集群,请求的分发策略是什么?

excel那个问题我们也遇到过。
excel导出时,首先发起一个请求生成excel,这个excel生成在tomcat1服务器上,然后浏览器又发起一个请求下载,结果是tomact2服务器处理下载,tomcat2服务器没有那个excel,所以失败了。

解决办法:
1.设置同一sessionid的请求始终由一个后端服务器,而不是发给不同服务器。
2. excel下载的路径在服务器上找一下,然后把这个设置为共享路径,所有服务器挂载该共享目录
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

1014

主题

4371

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10977
QQ
 楼主| 发表于 2020-11-5 09:13:36 | 显示全部楼层
江苏院-吴昊 发表于 2020-11-5 08:43
你们集群,请求的分发策略是什么?

excel那个问题我们也遇到过。

计划采用第一个方案:设置同一sessionid的请求始终由一个后端服务器,而不是发给不同服务器
在redis session共享模式下你们是怎么实现这个方案的
孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4308

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4308
发表于 2020-11-5 10:07:43 | 显示全部楼层
ecoolper 发表于 2020-11-5 09:13
计划采用第一个方案:设置同一sessionid的请求始终由一个后端服务器,而不是发给不同服务器
在redis sess ...

我们没解决。我们是用nginx做反向代理的。可以装nginx-sticky-module,保证一个session由同一个服务器处理。linux上ngnix安装模块要重新编译,正式部署后就没管了。

你们是用apache吧?  
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

1014

主题

4371

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10977
QQ
 楼主| 发表于 2020-11-5 10:33:24 | 显示全部楼层
江苏院-吴昊 发表于 2020-11-5 10:07
我们没解决。我们是用nginx做反向代理的。可以装nginx-sticky-module,保证一个session由同一个服务器处 ...

是的,用的是apache,redis session共享用上没
孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案
回复 支持 反对

使用道具 举报

1014

主题

4371

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10977
QQ
 楼主| 发表于 2020-11-7 00:38:42 | 显示全部楼层
jishuang 发表于 2020-11-4 14:35
1.excel上传具体指的什么?excel导入组件吗?报错把完整的错误信息发一下
2.redis session共享后,sessionid ...

1、spring session 自定义sessionid不是redis负责的事情,redis只管存储,生成规则是spring session负责;
2、找了一些帖子,原生没有提供接口自定义seesionid生成规则,有一些方案但不是好方案;
3、相关链接:
https://www.jb51.net/article/177462.htm
https://blog.csdn.net/qq351790934/article/details/54930049/

孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案
回复 支持 反对

使用道具 举报

1014

主题

4371

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10977
QQ
 楼主| 发表于 2020-11-8 23:33:32 | 显示全部楼层
1、已解决,扩展了RedisOperationsSessionRepository类,完美解决自定义sessionid,比网上的解决方案好;
2、结贴。
孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案
回复 支持 反对

使用道具 举报

33

主题

373

帖子

916

积分

高级会员

Rank: 4

积分
916
QQ
发表于 2023-4-28 16:22:13 | 显示全部楼层
学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-22 00:26 , Processed in 0.055113 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表