服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - WEB服务器 - web服务器集群(多台web服务器)session同步、共享的3种解决方法

web服务器集群(多台web服务器)session同步、共享的3种解决方法

2021-10-11 16:11服务器技术网 WEB服务器

这篇文章主要介绍了web服务器集群(多台web服务器)session同步、共享的3种解决方法,需要的朋友可以参考下

web服务器集群(多台web服务器)session同步、共享的3种解决方法

在做了web集群后,你肯定会首先考虑session同步问题,因为通过负载均衡后,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,一个登录用户,一会是登录状态,一会又不是登录状态。所以本文就根据这种情况给出三种不同的方法来解决这个问题:

一、利用数据库同步session

在做多服务器session同步时我没有用这种方法,如果非要用这种方法的话,我想过二种方法:

1,用一个低端电脑建个数据库专门存放web服务器的session,或者,把这个专门的数据库建在文件服务器上,用户访问web服务器时,会去这个专门的数据库check一下session的情况,以达到session同步的目的。

2,这种方法是把存放session的表和其他数据库表放在一起,如果mysql也做了集群了话,每个mysql节点都要有这张表,并且这张session表的数据表要实时同步。

说明:用数据库来同步session,会加大数据库的负担,数据库本来就是容易产生瓶颈的地方,如果把session还放到数据库里面,无疑是雪上加霜。上面的二种方法,第一点方法较好,把放session的表独立开来,减轻了真正数据库的负担

二、利用cookie同步session

session是文件的形势存放在服务器端的,cookie是文件的形势存在客户端的,怎么实现同步呢?方法很简单,就是把用户访问页面产生的session放到cookie里面,就是以cookie为中转站。你访问web服务器A,产生了session把它放到cookie里面了,你访问被分配到web服务器B,这个时候,web服务器B先判断服务器有没有这个session,如果没有,在去看看客户端的cookie里面有没有这个session,如果也没有,说明session真的不存,如果cookie里面有,就把cookie里面的sessoin同步到web服务器B,这样就可以实现session的同步了。

说明:这种方法实现起来简单,方便,也不会加大数据库的负担,但是如果客户端把cookie禁掉了的话,那么session就无从同步了,这样会给网站带来损失;cookie的安全性不高,虽然它已经加了密,但是还是可以伪造的。

三、利用memcache同步session

memcache可以做分布式,如果没有这功能,他也不能用来做session同步。他可以把web服务器中的内存组合起来,成为一个"内存池",不管是哪个服务器产生的sessoin都可以放到这个"内存池"中,其他的都可以使用。

优点:以这种方式来同步session,不会加大数据库的负担,并且安全性比用cookie大大的提高,把session放到内存里面,比从文件中读取要快很多。

缺点:memcache把内存分成很多种规格的存储块,有块就有大小,这种方式也就决定了,memcache不能完全利用内存,会产生内存碎片,如果存储块不足,还会产生内存溢出。

四、总结

上面三种方法都是可行的

第一种方法,最影响系统速度的那种,不推荐使用;

第二种方法,效果不错,不过安全隐患一样的存在;

第三种方法,个人觉得第三种方法是最好的,推荐大家使用

延伸 · 阅读

精彩推荐
  • WEB服务器2019常见六种web服务器软件介绍

    2019常见六种web服务器软件介绍

    WEB服务器也可以称为网站服务器,可以用来放置网站文件,供用户浏览。那么常见的WEB服务器软件有哪些呢? ①Apache Apache是世界使用排名的Web服务器软件。...

    服务器之家21692019-05-25
  • WEB服务器PHPStudy下如何为Apache安装SSL证书的方法步骤

    PHPStudy下如何为Apache安装SSL证书的方法步骤

    这篇文章主要介绍了PHPStudy下如何为Apache安装SSL证书的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    沃通CA3962019-06-29
  • WEB服务器阿里云web服务器部署

    阿里云web服务器部署

    一、前言 近年来,云计算技术得到了广泛的应用和推广,其中 云服务器 成为了最受欢迎的云服务之一。在众多 云服务商 中, 阿里云 是最大的一家,其云...

    未知1902023-05-23
  • WEB服务器阿里云服务器支不支持web

    阿里云服务器支不支持web

    阿里 云服务器 是一款由阿里巴巴集团提供的云计算服务,旨在为用户提供高性能、可靠的云端计算平台。作为一家全球领先的云计算服务提供商, 阿里云...

    未知1372023-07-06
  • WEB服务器阿里云ossweb服务器

    阿里云ossweb服务器

    阿里云 OSS(Object Storage Service)是一个面向 Internet 的对象存储服务平台,提供海量、安全、低成本、高扩展的数据存储和访问服务。OSS 可以作为 Web 服务器...

    未知1362023-07-09
  • WEB服务器phpstudy在本地搭建多个网站的方法

    phpstudy在本地搭建多个网站的方法

    经常做网站的朋友,往往要在自已的电脑同时建立多个站点,而 phpstudy 这款软件就能很好的解决这个问题,大家看下图 点击上图中的 其它选项菜单 ,就会...

    服务器之家13882019-10-08
  • WEB服务器怎么在阿里云服务器上运行javaweb

    怎么在阿里云服务器上运行javaweb

    如何在阿里 云服务器 上运行Javaweb 作为一名开发人员,将Java Web应用程序部署在云服务器上是非常常见的任务。 阿里云 作为国内领先的云计算平台,提供...

    未知832023-06-20
  • WEB服务器Apache启用GZIP压缩网页传输方法

    Apache启用GZIP压缩网页传输方法

    上一篇文章我们已经介绍了Apache启用GZIP压缩网页的方法,这里又发现了一篇好文章,特分享给大家...

    服务器技术网8162021-09-30