【Redis 源码日志】— Redis 应用:Web 服务器存储 session

作者:郑思愿

出处:http://daoluan.net


HTTP 是无状态的协议,上一条和下一条没有什么联系,要建立联系需要在客户端和服务器作一些数据记录。

在 Web 的应用上,用 Redis/Memcached 来做 session 的存储,以加速后台业务的处理速度。譬如用户的购物车的数据,可以在服务端作存储。传统里把 session 数据库中,可以放在内存中,存储系统就派上有用场了。

下面的一段简单的 Python 的代码,如果 Redis 缓存的数据,先从 Redis 中取,否则从数据库中查询,接着返回数据给到前端。

def GetUserShopingCart(user_session):
    goods = Redis.Get(user_session)
    if goods is not null:
        return goods
    ret = Mysql.Query("select * from user_shoping_cart where sessionid = %d" %
            (user_session))
    return ret

def SaveUserShopingCart(user_session, goods):
    ret = Redis.Set(user_session,goods)
    if not ret:
        Log("save redis error")
    ret = Mysql.Query("insert into user_shoping_cart (sessionid, goods) values"
        "(%s)",goods)
    return ret

大概来看一下后台的设计图:

赞(0) 打赏

如未加特殊说明,此网站文章均为原创,转载必须注明出处。Java 技术驿站 » 【Redis 源码日志】— Redis 应用:Web 服务器存储 session
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

关注【Java 技术驿站】公众号,每天早上 8:10 为你推送一篇技术文章

扫描二维码关注我!


关注【Java 技术驿站】公众号 回复 “VIP”,获取 VIP 地址永久关闭弹出窗口

免费获取资源

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏