问个网站技术上的问题

nisekoi1月前0

最近上班没事做摸鱼自学web,如果一个用户身上的某些属性是有期限的。 现在是不管访问什么页面。都要查询一下有效期。感觉不是很爽
除了每次访问页面都检测一次之外。有什么别的方法吗。
现在每访问一个页面就要查4次数据库 这个次数正常吗、恨不得一次查询搞定所有数据
最新回复 (21)
  • pathletboy1月前
    引用2
    redis用起来
  • 楼主nisekoi1月前
    引用3
    pathletboy 发表于 2022-6-24 13:50
    redis用起来
    搜了下redis是个k-v数据库 是初次查询之后就把用户的数据放到里面去 下次就不查库直接redis.get键名,这样
    如果没查到了再去数据库找? 是这样使用的吗 还是有什么高级用法
  • pathletboy1月前
    引用4
    nisekoi 发表于 2022-6-24 13:56
    搜了下redis是个k-v数据库 是初次查询之后就把用户的数据放到里面去 下次就不查库直接redis.get键名,这 ...
    一般就是存SESSION,SESSION里可以保存权限。
  • ssjoy1月前
    引用5
    用session来跟踪用户的信息
  • 楼主nisekoi1月前
    引用6
    ssjoy 发表于 2022-6-24 14:02
    用session来跟踪用户的信息
    我现在就在session里存了用户名UID这一类常用的的。存多了会不会很长一串啊
    现在已经有进7-80个字符了
  • cscool1月前
    引用7
    想一下做什么需要这个有效期,在做这个的时候再去判断不行吗?
  • 楼主nisekoi1月前
    引用8
    cscool 发表于 2022-6-24 14:09
    想一下做什么需要这个有效期,在做这个的时候再去判断不行吗?
    想了想 就这样干好了。把时间稍晚编码一下写到cookie里。不重要的页面直接不查库了,拿cookies的内容显示给前端。伪造就伪造吧,如果访问了需要检测权限的页面了。再去查询数据库。重新设置新的cookies返回页面。 应该能减少不少查询
  • 楼主nisekoi1月前
    引用9
    抽风了编辑
  • cnly19871月前
    引用10
    如果不想重新设计下数据库的话,用session或者local storge把过期时间存下来。
    重要的页面才请求数据库查询。
  • heibudong1月前
    引用11
    jwt
  • Salta1月前
    引用12
    需要时时刻刻查询的建议保存在Redis,因为Redis的存在内存中的,而且如果有数据写入,他会在几分钟内写入到硬盘,所以如果关机了,数据丢失也不是很重,如果你可以承受几分钟的数据丢失,就可以忘这里存。
    一般来说,第一次都是先到Redis看看有没有数据,有数据就取,没数据就去MySQL拉,拉到了再存到Redis,下次就再读Redis,这样效率非常的高, SESSION,也可以储存在Redis。
  • 楼主nisekoi1月前
    引用13
    cnly1987 发表于 2022-6-24 14:22
    如果不想重新设计下数据库的话,用session或者local storge把过期时间存下来。
    重要的页面才请求数据库查询 ...
    js还没有学好哈哈 先塞cookie里好了 先做出雏形。后面在去学前端去了
  • happy611月前
    引用14
    用jwt存在cookie或者本地咯
  • yrj1月前
    引用15
    换个鉴权方式就可以了,每次都查库是效率最低的,登录的时候查库,然后把token缓存起来。至于缓存方式,楼上诸位都说了。
  • 楼主nisekoi1月前
    引用16
    Salta 发表于 2022-6-24 14:25
    需要时时刻刻查询的建议保存在Redis,因为Redis的存在内存中的,而且如果有数据写入,他会在几分钟内写入到 ...
    直接塞cookie里一把唆了。不想有过多的外部依赖
  • robot1月前
    引用17
    没事,反正最后都会妥协成 “又不是不能用,能跑就行”
  • 电脑1月前
    引用18
    很简单呀,直接jwt
  • wo314001月前
    引用19
    jwt可以的
  • 楼主nisekoi1月前
    引用20
    都说JWT 。我去学学看是个啥 好像看起来很是个很厉害的技术
  • 小稻谷1月前
    引用21
    jwt
  • 9201月前
    引用22
    用的什么语言,有些框架自带这些用户属性的校验。
  • 游客
    23
返回