【前言】

无数人撞的头破血流告诉我们的一个经验是一个网站如果不做负载后果是不堪设想;负载一是对请求进行分压不至于大流量过来把机器压垮,即使部分机器Down掉网站仍可用(高可用,防止单点故障)。

【负载中不得不知的一些秘密】

1.做负载的有很多选择,从大的方面分为两种:

(1)硬负载

F5:效率高,成本高

.......

(2)软负载

LVS

HAproxy

Nginx

.......

2.我们的选择:

对目前我们所遇到以及在未来的一段时间内Nginx足可以满足我们的需要

3.集群中一个绕不开的话题:session共享

(1)Session共享三种方式:

a.粘贴方式,通过负载均衡的策略(比如Nginx负载时的哈希轮询)

优点:简单

缺点:需要访问的客户的IP分散,一旦某台集群宕机正在访问该机器的客户会受到影响;

b.Tomcat之间进行复制

优点:当tomcat的数量在五台之内可以用这种方式,简单高效

缺点:当tomcat的数量多时session之间的共享也对性能有消耗,会有一定的延迟

c.通过redis来进行共享

优点:Session在一个地方有点面向对象的抽象的味道,且tomcat机器宕机后session不会丢失对客户影响较小

缺点:引入了redis多引入一个故障点

(2)实现方式:

通过负载均衡策略以轮询算法中的哈希为例

tomcat本身进行共享,参考博客 http://blog.csdn.net/wlwlwlwl015/article/details/48160433

通过redis进行共享,引入redis的包修改tomcat 的content的配置文件

(3)我们选择的方式:

考虑到我们上线应用的特点,目前用两台机器做负载足以,所以综合考虑后采用tomcat本身进行session共享这种方式。

【总结】

生活在互联网的今天,一个应用的不可用对一个公司很多情况下是不可容忍的轻则损失一些利润重则公司倒闭;所以高可用方面的知识需要我们每个IT技术人员去学习,改进从而为公司和人类创造更多的价值。

tomcat集群共享session相关推荐

  1. Nginx+Tomcat+Memcached实现tomcat集群和session共享

    Nginx+Tomcat+Memcached实现tomcat集群和session共享 [http://blog.csdn.net/shimiso/article/details/8979044] 为什 ...

  2. 用Redis存储Tomcat集群的Session

    用Redis存储Tomcat集群的Session 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 前段时间,我花了不少时间来寻求一种方法,把新开发的代码推 ...

  3. 通过memcached来实现对tomcat集群中Session的共享策略 .

    近期在做一套集群的实现,实现的方案是在Linux下完成对Apache + Tomcat 负载均衡的功能. 但是实现了该集群后,发现登陆系统后,每次都会被拦截回登录页面,造成该现象的原因是Session ...

  4. Nginx+tomcat集群的session共享问题

    请求负载过程中会话信息不能丢失.那么需要在多个tomcat中session需要共享.所以需要进行相关问题的解决 配置Tomcat的session共享可以有三种解决方案: 第一种:是以负载均衡服务器本身 ...

  5. 基于tomcat集群做session共享

    前端代理服务器nginx:192.168.223.136 tomcat服务器:采用的一台多实例192.168.223.146:8081,192.168.223.146:8082(如何构建多实例tomc ...

  6. Tomcat集群和Session共享的配置方法

    Tomcat集群配置其实很简单,在Tomcat自带的文档中有详细的说明( /docs/cluster-howto.html ),只不过是英语的,对我这样的人来说很难懂 . 下面根据说下怎么配置吧: 第 ...

  7. MSM实现tomcat集群的session共享

    本文首发于我的个人网站: https://hewanyue.com/ 本文作者: Hechao 本文链接: https://hewanyue.com/blog/6254cc16.html 会话保持起源 ...

  8. Tomcat集群及Session共享

    Tomcat集群 由于单台Tomcat的承载能力是有限的,当我们的业务系统用户量比较大,请求压力比较大时,单台Tomcat是扛不住的,这个时候,就需要搭建Tomcat的集群,而目前比较流行的做法就是通 ...

  9. 集群共享session;shiro实现session共享;springboot实现redis共享session;

    shiro实现共享session;springboot集成redis共享session;集群环境下shiro共享session 一.实现session共享 1. 聊聊session共享 2. shir ...

最新文章

  1. Python之装饰器
  2. k8s进入pod运行
  3. CanalAdapter启动过程分析(源码详解)
  4. 独立成分分析 ( ICA ) 与主成分分析 ( PCA ) 的区别
  5. Linux 退出vi编辑模式
  6. 实现连麦_微信重磅更新,视频号直播连麦打赏美颜上线,新增巨大流量入口
  7. ABP(现代ASP.NET样板开发框架)系列之20、ABP展现层——动态生成WebApi
  8. php mysql过滤特殊字符_php特殊字符过滤,html标签处理
  9. jxls设置隐藏列隐藏行
  10. 微信小程序之上传图片到云端存储并返回图片地址
  11. 经纬财富:东莞炒白银怎么做好风险控制
  12. Discuz!风格模版初级不完全修改教程
  13. 网易笔试001(HR之声)
  14. 往word表中写数据
  15. Redis入门到实战(实战篇)缓存更新、穿透、雪崩、击穿!
  16. BAT机器学习面试1000题系列(第150~279题)
  17. 2.2 PB-ADV入网过程
  18. 如何使用Pytest进行自动化测试
  19. CSS3干货14:自定义页面滚动条
  20. ClickHouse 数据导出导入

热门文章

  1. 当物联网和区块链同台,太惊艳!
  2. 我是如何从通信成功转型为 Java 软件开发工程师的?
  3. 开源 TiDB Operator 让 TiDB 成为真正的 Cloud-Native 数据库
  4. Python 人气王,JS 比 Java 更受科技公司青睐!
  5. Google AI 的焦虑:拆分搜索和人工智能部门
  6. 2008服务器网站设置密码,win2008服务器设置密码
  7. java等边三角形代码_Java实现等边三角形--小程序,大思想
  8. debian安装什么mysql_安装多个mysql实例(debian版本)
  9. i计算机网络的应用程序,计算机网络技术及其在校园网的研究与应用毕业论文.doc...
  10. java random api_API中的Scanner、Random、ArrayList、String类