• session同步


    对于大型分布式网站来说,一个业务后面往往对应着多台服务器。用户的请求将在不同的服务器之间进行跳转,这样的情形下,我们就需要保持session在不同服务器之间的同步。

    1、基于数据库的session共享。

    原理:使用数据库专门用来存储session信息,保证session的持久化。

    优点:服务器出现问题,session不会丢失。

    缺点:如果网站的访问量很大,把session存储到数据库中,会对数据库造成很大压力,还需要增加额外的开销维护数据库,系统整体的吞吐会受到很大的影响。

    2、session 复制

    原理:将一台机器上的Session数据广播复制到集群中其余机器上

    优点:实现简单、配置较少、当网络中有机器Down掉时不影响用户访问

    缺点:在机器较少,网络流量较小广播式复制到其余机器上,当机器数量增多时候会有一定廷时,带来一定网络开销

    3、基于redis的分布式session

    原理:将sessionId作为key, session 作为value 保存在redis集群中

    优点:实现了集群之间的session同步,实现了服务器的高可用

    实现流程:用户请求通过负载均衡设备(比如nginx)转发到不同的应用服务器集群上,应用服务器会根据sessionId来访问redis 集群进行session的存取。这样即使某台服务器宕机了,也不会影响到其他的服务器。

  • 相关阅读:
    使用java实现面向对象 第一章
    深入.NET平台和C#编程笔记 第九章 文件操作
    MySQL_第七章
    MySQL_第八章
    MySQL_第五章
    MySQL_第四章
    MySQL_第三章
    MySQL_第二章
    MySQL_第一章
    S2_OOP第二章
  • 原文地址:https://www.cnblogs.com/wbringarden/p/9717866.html
Copyright © 2020-2023  润新知