Grocker
V2EX  ›  编程

SSO 单点登录时一端被挤下去让客户端及时感知的方案

  •  
  •   Grocker · Jun 1, 2022 · 2669 views
    This topic created in 1621 days ago, the information mentioned may be changed or developed.

    场景:2 个系统登录了不同的端,客户端被挤下去了,但此时用户没有发起任何网络请求,导致看起来还处于登陆状态,必须重新发起操作后才能被踢下去,用户体验不太好。现在想一端被挤下去后可以立刻踢下线。

    自己想到的方案:

    • websocket (或者其它主动推送的方式)
    • 轮询
    • http2 server push (这个方案更多的是推静态资源?)

    老哥们有其他更好的方案吗?谢了

    8 replies  •  2022-07-08 18:36:28 +08:00
    dcty
    dcty
    Jun 1, 2022 via iPhone
    1
    当然是都用上,搞个 fallback
    whoosy
    whoosy
    Jun 1, 2022
    2
    轮询成本小
    ch2
    ch2
    Jun 1, 2022
    3
    轮询最简单
    daliusu
    daliusu
    Jun 1, 2022❤️1
    4
    http2 server push 和 websocket 这种服务器给你推消息是两码事,这不是让你服务器主动和页面通信的。你这个需求如果实时性要求不高,暂时就走轮询就行,维护一个 websocket 还挺麻烦的。
    clickhouse
    clickhouse
    Jun 1, 2022
    5
    轮询.
    sadfQED2
    sadfQED2
    Jun 1, 2022 via Android
    6
    轮询+1
    因为其他方案成本太大了,大得离谱那种
    jackma0571
    jackma0571
    Jun 2, 2022
    7
    维护一个心跳请求就行
    dfgxcvbcv
    dfgxcvbcv
    Jul 8, 2022
    8
    操作再下线,没操作不发任何请求才是一个正常程序的做法
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1585 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 12:25 · PVG 20:25 · LAX 04:25 · JFK 07:25
    ♥ Do have faith in what you're doing.