1

探索了春季会议和redis,它看起来非常好。

想解决一个问题很久了,如何根据哈希中的spring session token值从redis db中获取session token列表。

我知道它不是关系数据库,也没有直接的方法可以实现,但这是一种解决问题的方法,这对我们解决问题非常重要

我在博客中读到我们需要保持一组跟踪,在使用 spring session 时有什么方法可以实现这一点。我什至不知道该怎么做

非常感谢任何帮助。

谢谢

4

2 回答 2

1

有用的命令:

  1. redis-cli:进入redis控制台示例:

    root@root>redis-cli

    127.0.0.1:6379>_

  2. keys *:显示存储在 redis DB 中的所有键
    示例:

    127.0.0.1:6379>键 *

    “春天:会话:过期:1440354840000“

    “春天:会话:会话:3b606f6d-3d30-4afb-bea6-ef3a4adcf56b“</p>

  3. monitor:监控redis DB

    127.0.0.1:6379> 监视器

    好的

    1441273902.701071 [0 127.0.0.1:49137] “PING” 1441273920.000888 [0 127.0.0.1:49137] “成员”

  4. hgetall SESSION_ID :检查存储在会话
    示例中的所有密钥:

    127.0.0.1:6379>hgetall spring:session:sessions:3b606f6d-3d30-4afb-bea6-ef3a4adcf56b

  5. flushall 从数据库中删除所有密钥。

    例子 :

    127.0.0.1:6379> 冲洗

    好的

于 2015-09-03T09:56:57.060 回答
0

打开 redis-cli 然后运行

127.0.0.1:6379> keys *
1) "spring:session:expirations:1435594380000"
2) "spring:session:sessions:05adb1d7-c7db-4ffb-99f7-47d7bd1867ee"

127.0.0.1:6379> type spring:session:sessions:05adb1d7-c7db-4ffb-99f7-47d7bd1867ee
hash

127.0.0.1:6379> hgetall spring:session:sessions:05adb1d7-c7db-4ffb-99f7-47d7bd1867ee
 1) "sessionAttr:SPRING_SECURITY_CONTEXT"
 2) ""
 3) "sessionAttr:javax.servlet.jsp.jstl.fmt.request.charset"
 4) "\xac\xed\x00\x05t\x00\x05UTF-8"
 5) "creationTime"
 6) "\xac\xed\x00\x05sr\x00\x0ejava.lang.Long;\x8b\xe4\x90\xcc\x8f#\xdf\x02\x00\x01J\x00\x05valuexr\x00\x10java.lang.Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x01N?\xfb\xb6\x83"
 7) "maxInactiveInterval"
 8) "\xac\xed\x00\x05sr\x00\x11java.lang.Integer\x12\xe2\xa0\xa4\xf7\x81\x878\x02\x00\x01I\x00\x05valuexr\x00\x10java.lang.Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\a\b"
 9) "lastAccessedTime"
10) "\xac\xed\x00\x05sr\x00\x0ejava.lang.Long;\x8b\xe4\x90\xcc\x8f#\xdf\x02\x00\x01J\x00\x05valuexr\x00\x10java.lang.Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x01N?\xfb\xb6\xa6"

127.0.0.1:6379> 
于 2015-06-29T15:46:14.253 回答