iteye_171 2012-09-14 11:26
浏览 1601
已采纳

用户tokenId应该保存在哪里?

tokenId表示为:用户登录到成功后,服务端分配给客户端的令牌号,同时下发tokenId的过期时间。下次用户直接持有tokenId,在其过期时间内均可跳过用户登录步骤,直接请求其他服务操作。如果tokenId过期,则需重新登录。

现在问:tokenId应该保存在哪里?

1、保存在服务器内存中,使用map形式来维护
优点:速度快,
缺点:耗内存,服务端当机了,全部tokenId消失了,及时是tokenId未过期,用户也是需要重新登录

2、保存在数据库中
优点:服务端当机,恢复后,还可以维护tokenId
缺点:用户每一次请求操作,都必须访问数据,增加服务端压力。。

我想问问,服务端到底是怎么保存的?还是有其他办法。。。还是说上面我说的没有考虑到的??

  • 写回答

2条回答 默认 最新

  • jinnianshilongnian 2012-09-14 12:04
    关注

    1、丢了影响很大吗?如果不大可以考虑 如memcache / 内存表
    2、如果很大 那最好还是持久化+缓存 这样可以防止数据库压力大

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况