集群
集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台。在客户端看来,一个集群就象是一个服务实体,但事实上集群由一组服务实体组成
优点
与单一服务实体相比较,集群提供了以下两个关键特性:
1、可扩展性--集群的性能不限于单一的服务实体,新的服务实体可以动态地加入到集群,从而增强集群的性能。
2、高可用性--集群通过服务实体冗余使客户端免于轻易遇到out of service的警告。在集群中,同样的服务可以由多个服务实体提供。如果一个服务实体失败了,另一个服务实体会接管失败的服务实体。集群提供的从一个出错的服务实体恢复到另一个服务实体的功能增强了应用的可用性。
为了具有可扩展性和高可用性特点,集群的必须具备以下两大能力:
(1)负载均衡--负载均衡能把任务比较均衡地分布到集群环境下的计算和网络资源。
(2)错误恢复--由于某种原因,执行某个任务的资源出现故障,另一服务实体中执行同一任务的资源接着完成任务。这种由于一个实体中的资源不能工作,另一个实体中的资源透明的继续完成任务的过程叫错误恢复。
负载均衡和错误恢复都要求各服务实体中有执行同一任务的资源存在,而且对于同一任务的各个资源来说,执行任务所需的信息视图(信息上下文)必须是一样的。
集群的分类
集群主要分成三大类:高可用集群(High Availability Cluster/HA),负载均衡集群(Load Balance Cluster),高性能计算集群(High Performance Computing Cluster/HPC)
(1)高可用集群(High Availability Cluster/HA):一般是指当集群中有某个节点失效的情况下,其上的任务会自动转移到其他正常的节点上。还指可以将集群中的某节点进行离线维护再上线,该过程并不影响整个集群的运行。常见的就是2个节点做成的HA集群,有很多通俗的不科学的名称,比如"双机热备", "双机互备", "双机",高可用集群解决的是保障用户的应用程序持续对外提供服务的能力。
(2)负载均衡集群(Load Balance Cluster):负载均衡集群运行时一般通过一个或者多个前端负载均衡器将工作负载分发到后端的一组服务器上,从而达到将工作负载分发。这样的计算机集群有时也被称为服务器群(Server Farm)。一般web服务器集群、数据库集群和应用服务器集群都属于这种类型。这种集群可以在接到请求时,检查接受请求较少,不繁忙的服务器,并把请求转到这些服务器上。从检查其他服务器状态这一点上看,负载均衡和容错集群很接近,不同之处是数量上更多。
(3)高性能计算集群(High Performance Computing Cluster/HPC):高性能计算集群采用将计算任务分配到集群的不同计算节点而提高计算能力,因而主要应用在科学计算领域。这类集群致力于提供单个计算机所不能提供的强大的计算能力。
Tomcat集群配置的优缺点
通常配置tomcat集群有三种方式:使用DNS轮询,使用apache r-proxy代理方式,使用apache mod_jk方式。
(1)DNS轮询的缺点:当集群中某台服务器停止之后,用户由于dns缓存的缘故,便无法访问服务,必须等到dns解析更新,或者这台服务器重新启动。还有就是必须把集群中的所有服务端口暴露给外界,没有用apache做前置代理的方式安全,并且占用大量公网IP地址,而且tomcat还要负责处理静态网页资源,影响效率。优点是集群配置最简单,dns设置也非常简单。
(2)R- proxy的缺点:当其中一台tomcat停止运行的时候,apache仍然会转发请求过去,导致502网关错误。但是只要服务器再启动就不存在这个问题。
(3)mod_jk方式的优点是,Apache 会自动检测到停止掉的tomcat,然后不再发请求过去。缺点就是,当停止掉的tomcat服务器再次启动的时候,Apache检测不到,仍然不会转发请求过去。
R-proxy和mod_jk的共同优点是.可以只将Apache置于公网,节省公网IP地址资源。可以通过设置来实现Apache专门负责处理静态网页,让Tomcat专门负责处理jsp和 servlet等动态请求。共同缺点是:如果前置Apache代理服务器停止运行,所有集群服务将无法对外提供。R-proxy和 mod_jk对静态页面请求的处理,都可以通设置来选取一个尽可能优化的效果。这三种方式对实现最佳负载均衡都有一定不足,mod_jk相对好些,可以通过设置lbfactor参数来分配请求任务。
Apache+ Tomcat整合的目标
(1)可以提高整体web服务器性能,将动态页面交给tomcat处理,将静态文件交给apache处理,可以大大提高服务器的静态文件处理性能。
(2)可以实现web服务器的负载均衡,服务器可采用集群的方式来响应客户端请求。Apache的作用是做代理,将请求分发给各个tomcat处理,tomcat作为集群服务器处理请求。这样可以提高整体web服务器性能和访问量。
(3)可以实现无缝升级应用程序和容错处理,在tomcat集群中如果有一个tomcat挂掉了,用户还可以通过其他tomcat来进行访问,同时如果我们想升级应用程序,我们可以通过升级每个tomcat的应用程序来实现升级,在升级的过程中不会影响web服务器的访问。
在下篇博客中,我将详细描述Tomcat集群、Session共享和负载均衡的实现。
相关推荐
在本文档中,我们将深入探讨WebLogic 8.1集群的概念和配置。 **Domain** Domain是WebLogic Server的核心管理单元,它是一个逻辑组织结构,包含了管理服务器、被管理服务器、应用程序、资源和服务。一个Domain可以...
Linux运维-6.集群-集群视频-1集群概念-03集群概念总结.mp4
Linux运维-6.集群-集群视频-1集群概念-02集群分类.mp4
Linux运维-6.集群-集群视频-1集群概念-01集群概述.mp4
以下将详细解释WebLogic集群的相关概念及其配置要点。 首先,Domain是WebLogic Server管理的基本单位,它是一个逻辑组织,包含了管理服务器、被管理服务器、机器、节点管理器以及可能存在的多个集群。Domain的配置...
### Weblogic集群概念详解 #### 一、基本概念解析 **1. Domain(域)** - **定义**:域是WebLogic Server实例的基本管理单元,它由一个或多个WebLogic Server实例组成,其中至少包含一个作为管理员服务器的实例。...
JAVA集群是一种技术解决方案,旨在为基于J2EE的应用提供高可用性和伸缩性。随着互联网应用的日益复杂,如银行系统和大型搜索引擎,对于服务的不间断性和处理能力的需求也在不断增长。J2EE集群能够应对这种挑战,但其...
mysql集群基本概念!采用多台 Mysql 数据库服务器可以大大的增强 Mysql 的数据存储和处理能力,可 以部署成主从复制和读写分离的,即一个主数据库(Master)和一个或多个从数据库 (Slaver),主从数据库的数据库
一、集群概念 在Weblogic Server中,集群指的是多个服务器实例组成的逻辑组,通过负载均衡和会话粘滞等机制来提供高可用性和高性能的应用服务。集群可以包含多个域,一个域可以包含多个服务器实例。 二、域概念 ...
一、WebLogic集群概念及区别 WebLogic集群主要通过多个服务器实例共同工作,来提供负载均衡和故障转移等功能。与Tomcat集群相比,WebLogic集群有一个显著的特点:需要一个管理服务器,也称为AdminServer,作为集群的...
1. **ActiveMQ集群概念** - **集群**:ActiveMQ集群是多个ActiveMQ服务器实例的集合,它们共享消息负载,提高系统的可用性和可靠性。当一个节点故障时,其他节点可以接管其工作,确保服务不间断。 - **网络连接器*...
1. **集群概念**:解释了集群的基本原理,为何要在Websphere中实现集群,以及集群能为应用系统带来的益处,如故障转移、负载均衡等。 2. **环境准备**:包括了安装和配置Websphere ND 6.1的前提条件,例如操作系统...
1. **集群概念**:集群是由多个独立的服务器实例组成,它们看起来像是一个单一的系统,为用户提供无缝的服务。在WebLogic中,集群可以提高服务的可用性和性能,因为如果一个服务器实例出现问题,其他实例可以接管其...
先进制造业集群是在传统产业集群概念的基础上进一步发展和升级的概念,它特指在先进技术、工艺和制造业领域,地理相邻的大量企业、机构通过相互合作与交流共生形成的复杂网络结构和产业组织形态。这一概念的提出,...
1. **理解集群概念**: 集群是一种将多个独立的服务器节点组织在一起,以提供高可用性和扩展性的技术。在ActiveMQ中,集群可以使得消息在多个服务器之间共享,当一个节点故障时,其他节点可以接管工作,保证服务不...
1.1.2 集群概念:一个集群是由多个相互协作的服务器实例组成的,它们共享应用程序和资源,提供故障转移和负载均衡。 1.1.3 配置集群应用的必要条件:硬件资源充足,网络连接稳定,操作系统支持多实例运行,以及...