`
臻是二哥
  • 浏览: 183732 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
博客专栏
Group-logo
Java技术分享
浏览量:0
社区版块
存档分类
最新评论

大型网站架构之应用服务器集群化

阅读更多
随着网站的发展,一台应用服务器无法处理太多用户请求,考虑部署多台应用服务器组成集群来提供服务。此时问题来了?

问题1:扩展到多台应用服务器时,可能同一个用户的先后两次请求由不同的应用服务器处理,这个时候不同的应用服务器如何进行session的管理。(应用服务器集群的session管理)
问题2:如何将请求均匀的分发给集群中的应用服务器。(应用服务器集群的负载均衡)

应用服务器集群的session管理:
应用服务器集群的session管理有4种手段:session复制,session绑定,cookie中携带session,session服务器(或服务器集群)。
session复制:当用户在某台应用服务器上首次登陆以后,将它的session复制到集群中其他的应用服务器上。如下图:


session绑定:当用户在某台应用服务器上首次登陆以后,负载均衡设备会记得这台应用服务器,该用户以后的每次请求都会被负载均衡设备派发到这台应用服务器上处理。如下图:


cookie携带session:应用服务器把session封装在cookie中返回给浏览器,以后浏览器的每一次请求,应用服务器都可以从cookie中获得session信息。


session服务器(或集群):用一个专门的服务器或服务器集群存储session,应用服务器的所用的session都存储在这个服务器上(在实际应用中,session服务器可以利用数据库或分布式缓存系统)。如下图:


解决了应用服务器集群的session管理,应用服务器就成为了“无状态的”:即应用服务器不保存上下文信息,集群中的每台服务器完全对等。请求提交到每一台服务器处理结果都是一样的。我们把这称为应用服务器的无状态性。

应用服务器集群的负载均衡:
应用服务器的无状态性使得负载均衡成为可能。负载均衡有5种手段,分别为:http重定向负载均衡,DNS域名解析负载均衡,反向代理负载均衡,IP负载均衡,数据链路层负载均衡(也成为三角传输模式)。

http重定向负载均衡:


dns域名解析负载均衡:dns域名解析通常作为第一级别的负载均衡手段,通过将请求解析到网站内部的不同的负载均衡服务器,再由这些负载均衡服务器将请求转发到应用服务器上。


反向代理服务器:由于反向代理工作在http层面,因此也叫应用层负载均衡。


IP负载均衡:在网络层通过修改请求报文的目标地址进行负载均衡。LVS的NAT模式就以此种方式工作。


数链层负载均衡:数链层负载均衡分发过程中不修改IP地址,只修改目的MAC地址,通过配置应用服务器的虚拟IP和负载均衡服务器IP相同即可。链路层负载均衡是目前使用最广泛的负载均衡手段,在linux平台下最好的链路层负载均衡产品是LVS(linus virtual server)


通过上面的描述可以了解,只要服务器集群是无状态的,那么就可以通过负载均衡的手段对这个服务器集群进行伸缩。所以,不仅仅是应用服务器集群,服务层的集群也可以通过这样的手段进行伸缩。但是对于分布式缓存系统,他是有状态的,就不能使用这种方案了。详见下一篇博客。





  • 大小: 54.2 KB
  • 大小: 53.6 KB
  • 大小: 55.3 KB
  • 大小: 61.1 KB
  • 大小: 60.6 KB
  • 大小: 59.2 KB
  • 大小: 59.3 KB
  • 大小: 74.3 KB
  • 大小: 77.5 KB
分享到:
评论

相关推荐

    网站架构技术

    使用应用服务器集群改善网站的并发处理能力 问题: 负载均衡情况下session状态的保持? 解决方案: 基于DNS的负载均衡 反向代理 ngix JK2 数据库的读写分离 问题: 读库与写库的数据同步...

    高性能高并发服务器架构大全

     eBay 的应用服务器规模 67  eBay 的数据库分布扩展架构 68  从LiveJournal后台发展看大规模网站性能优化方法 70 一、LiveJournal发展历程 70 二、LiveJournal架构现状概况 70 三、从LiveJournal发展中...

    云存储服务器基础架构管理

    实际上,我们这里所说的云是一种“资源池”,由一些可以自我维护和管理的虚拟计算资源构成,通常是一些大型服务器集群,包括计算服务器、存储服务器、宽带资源、软件和应用等等。云计算将所有的计算资源集中起来,并...

    NetApp集群模式Data ONTAP 8.2实验室验证报告

    服务器虚拟化的采用在大型企业和中端市场企业中几乎无处不在,26%的受访者表示,这项技术的推广应用是2013年IT任务的重中之重。桌面虚拟化和云基础架构服务跟服务器虚拟化一样,实现了快速资源配置等诸多优势,...

    低清版 大型门户网站是这样炼成的.pdf

    第1章 大型门户网站架构分析 3 1.1 大型门户网站与小型企业网站的区别 3 1.2 高性能、高负载门户网站架构剖析 9 1.2.1 服务器操作系统的选择 10 1.2.2 dns服务器bind 16 1.2.3 cache服务器squid 18 1.2.4 带...

    Java思维导图xmind文件+导出图片

    大型分布式架构演进过程 分布式架构设计 主流架构模型-SOA架构和微服务架构 领域驱动设计及业务驱动规划 分布式架构的基本理论CAP、BASE以及其应用 什么是分布式架构下的高可用设计 构架高性能的分布式架构 ...

    服务器运维工程师的主要职责.docx

    2、指导并带领服务器团队制定并执行与公司战略和整体业务需求一致的流程,策略及IT基础架构部署,遵守并执行相应的安全及业务规范及标准; 3、管理设立外地公司的灾备系统;负责相应灾备恢复需求;通过设立相应的BCP及...

    H3C-B16000刀片服务器白皮书.docx

    H3C B16000刀片服务器 H3C UniServer B16000塑合智能刀片服务器,适合应用在动态需求更多的大型数据中心,可以支持多达16台刀片服务器和存储设备。可以让您的IT基础设施更高效地将计算、存储和网络连接,结构资源与...

    服务器的发展历程调研报告.doc

    2)服务器是针对具体的网络应用特别定制的,因而服务器又与微机(普通PC)在处 理能力、稳定性、安全性、可靠性、可扩展性、可管理性等方面存在很大的区别。而最 大的差异就是在多用户多任务环境下的可靠性上。如果...

    【重磅】最新AIOps智能运维实践方案资料大合集(62份).zip

    在新一代运维中台架构之上构建智能场景化运维 在运维团队中普及DataOps和AIOps 浙江移动基础设施AIOps实践及探索 浙江移动私有云AIOps实践 浙江移动AIOpsDev运维转型实践 制造业全栈式监控一体化智能运维平台 智能...

    redhat as 5.3 bt

    虚拟化是发展速度最快的一种部署方法——在接下来的 5 年中,预计所有的服务器中,将有高达 15% 的服务器使用虚拟化技术。通过虚拟化,您可以最大限度地发挥您的资源的作用,并提高部署灵活性和响应能力。 软件即...

    大作业(云计算).doc

    "云"是一些可以自我维护和管理的虚拟计算资源,通常是一些 大型服务器集群,包括计算服务器、存储服务器和宽带资源等。云计算将计算资源集中 起来,并通过专门软件实现自动管理,无需人为参与。 用户可以动态申请...

    开源(商城)电子商务软件iWebMall v0.9.9 繁体版.rar

    站点的集群与分布式技术(分布式计算与存储/高可用性/负载均衡)被屏蔽在SI平台之内,基于iweb Shop 并且按照SI平台库扩展规范开发的新增功能模块,也将同时获得这种超级计算与处理的能力。 iweb Shop 性能卓越,...

    Greenplum技术

    计算机的CPU、内存、网络等硬件设施在性能上得到极大的提升的同时,在价格上也是越来越廉价,单个PC服务器就能拥有6~8 core的强大处理能力,因此,我们现在很容易就能搭建一个包含100个core的服务器集群,...

    Oracle 融合中间件中文产品技术白皮书(非常有价值)

    Oracle 应用服务器 10g 标准版 1 (PDF) Oracle 应用服务器 10g 第 3 版 (10.1.3.1) 新特性概述 (PDF) Oracle Content Management 统一的企业内容管理平台的优势 (PDF) Oracle 全面内容管理 (PDF) Oracle 全面内容...

    人工智能基础层定义.pdf

    人工智能应用层 异构智能计算服务器 AI技术 开放平台 AI基础数据服务 系统级AI芯片 AI应用模型 效率化生产 平台 面向AI的数据 治理平台 人工智能计算中心 采用异构形式的服务器,支持X86、 GPU、ARM、ASIC及FPGA加速...

    iWebMall 多用户商城系统 v1.3 开源版.zip

    iWebMall多用户商家平台基于iweb SI框架开发,在获得iweb SI技术平台库支持的条件下,iwebMall可以轻松满足用户量级百万至千万级的大型电子商务网站的性能要求。站点的集群与分布式技术(分布式计算与存储/高可用性/...

    分布式数据库设计方案.doc

    无共享磁盘架构节省了硬件,利用中小型的服务器取代大型服务器大幅降低了硬件的 成本,系统中不再有闲置的资源,降低了系统TCO(总体拥有成本)。 分区把数据分成更小的部分,提高了数据库的可用性和可管理性。 ...

    开源电子商务系统(网店)iWebShop v0.9.1 繁体中文版.rar

    iweb Shop基于iweb SI框架开发,在获得iweb SI技术平台库支持的条件下,iweb Shop可以轻松满足用户量级百万至千万级的大型电子商务网站的性能要求。站点的集群与分布式技术(分布式计算与存储/高可用性/负载均衡)被...

    JAVA上百实例源码以及开源项目

    本规范尝试满足大型主机、微型主机、个人工作站、和TACs 的不同需求。例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取...

Global site tag (gtag.js) - Google Analytics