导航:首页 > 编程语言 > java集群分布

java集群分布

发布时间:2023-02-18 14:15:20

A. java 集群

一旦在服务器上安装并运行了群集服务 , 该服务器即可加入群集。群集化操作可以减少单点故障数量,并且实现了群集化资源的高可用性。下述各节简要介绍了群集创建和群集操作中的节点行为。

注意 : 有关安装群集服务器的信息 , 请参阅 Windows server 2003 产品家族的帮助和部署指南。

创建群集
在服务器群集产品中含有用来在服务器上安装群集软件和创建新群集的群集安装实用工具。创建新群集时,首先在选择作为群集的第一个成员的计算机上运行该实用工具。第一步是确定群集名称并创建群集数据库和初始的群集成员列表来定义新群集。 Windows server 2003 群集新增了一个群集管理设置向导以及使用 cluster.exe 命令行界面创建 ( 包括从远程创建 ) 群集的功能。

创建群集的第二步是 , 添加可供所有群集成员使用的共用数据存储设备。这样,创建的新群集将带有一个节点、自己的本地数据存储设备以及群集共用资源 —— 通常是磁盘或数据存储和连接介质资源。

创建群集的最后一步是 , 在另外将要成为群集成员的每一台计算机上运行安装实用工具。每当将新节点添加到群集中时,新节点都会自动从群集的原始成员获得现有群集数据库的副本。当节点加入或形成群集时,群集服务会更新该节点私有的配置数据库副本。

形成群集
如果服务器运行了群集服务并且无法找到群集中的其它节点 , 它自己可以形成一个群集。要形成群集,节点必须能够获得对仲裁资源的独占权。

当最初形成群集时 , 群集中的第一个节点将包括群集配置数据库。每当有新节点加入群集时,新节点都会在本地获得并保持群集配置数据库的副本。仲裁资源用恢复日志(其中含有同节点无关的群集配置和状态数据)的形式存储配置数据库的最新版本。

在群集运行中 , 群集服务使用仲裁恢复日志执行以下操作 :

• 保证只有一组活动、可相互通讯的节点才能形成群集

• 仅当某个节点可以获得对仲裁资源的控制权时 , 才允许它形成群集

• 仅当某个节点可以同控制仲裁资源的节点通讯时 , 才允许它加入或留在现有群集中

从群集中的其它节点和群集服务管理接口的角度看 , 当形成群集时 , 群集中的每个节点可能处于三种不同状态中的一种。事件处理器会记录这些状态,而事件日志管理器会将这些状态复制到群集的其它节点。群集服务状态包括:

• 脱机 。此时的节点不是完全有效的群集成员。该节点及其群集服务器可能在运行,也可能未运行。

• 联机 。此时的节点是完全有效的群集成员。它遵从群集数据库的更新、对仲裁算法施加自己的影响、维护心跳通讯,并可以拥有和运行资源组。

• 暂停 。此时的节点是完全有效的群集成员。它遵从群集数据库的更新、对仲裁算法施加自己的影响、维护心跳通讯,但它无法接受资源组。它只能支持它当前已拥有的那些资源组。之所以提供暂停状态,是为了允许执行某些维护。大多数服务器群集组件会将联机和暂停视为等价的状态。

加入群集
如果一个服务器要加入现有群集 , 则它必须运行群集服务并且必须成功找到群集中的其它节点。在找到其它节点后,加入的服务器必须接受群集成员资格验证,并获得群集配置数据库的副本。

加入现有群集的过程开始于 Windows Server 2003 或 Windows 2000 Service Control Manager 在节点上启动群集服务之时。在启动过程中,群集服务会配置并装入该节点的本地数据设备。它并不会试图将共用的群集数据设备作为节点联机,因为现有群集可能正在使用这些设备。

为了查找其它节点 , 会启动一个发现过程。当节点发现任何群集成员时,它将执行身份验证序列。第一个群集成员会对新加入者进行身份验证,并且在新服务器得到成功验证后返回成功状态。如果验证不成功(未能识别待加入节点的群集成员身份,或者它使用了无效的帐户密码),则加入群集的请求会被拒绝。

进行成功验证后 , 首先联机的群集节点会检查加入节点上的配置数据库副本。如果该副本已过时,对加入服务器进行验证的群集节点会为加入的服务器发送该数据库的更新副本。刚加入群集的节点在收到复制的数据库后,可以用它查找共享资源并根据需要将它们联机。

脱离群集
当节点关闭或群集服务被停止时 , 节点可能脱离群集。但当节点不执行群集操作(比如不向群集配置数据库提交更新)时,节点也可能被迫脱离(被逐出)群集。

如果节点根据预先的计划脱离群集 , 它会向其它所有节点成员发送 ClusterExit 消息 , 通知它们它将脱离群集。该节点不等待任何响应就会立即进行关闭资源和所有群集连接的操作。由于其余节点收到了退出消息,因此它们不会执行在节点意外失效或网络通讯停止时发生的重新分组过程以重新确立群集成员身份。

[ 本日:2 本周:2 本月:60 总浏览数:128 ] [返回上一页] [打 印] [收 藏]
上一篇文章:故障检测和相关链接
下一篇文章:windows 2000活动目录详解之安装配置篇

B. 开发的JAVA WEB程序部署在服务器集群的哪一个服务器上

阁下在没有分布式集群部署经验的前提下能画出这样的架构图让人佩服

本来我是不敢回答这些问题的,因为本身我也没有集群部署经验,但是一来没有人帮忙回来二来我也看过一点这些相关的书籍,所以可以把我知道的给你说下,估计能帮助你30%。

整个架构部署用到了集群部署(1:2)、动静分离、缓存服务、拆分数据库等高并发处理技术,属于大型系统的模型。

据我所知,集群1:2是1负载分发器、2web服务器,(以Apache+tomcat集群为例),那么Director server应该安装Apache,而Real Server应该安装tomcat,至于java web项目在tomcat下面即可。

而你的架构图中还有动静分离机制,理论上静态文件服务器也应该有java web项目才对,不然静态文件服务器如何取静态文件呢。tomcat对静态文件处理不是很好,所以很多人推荐用Nginx作为载体。

缓存和集群数据库我不了解,不发表任何谬论。

session会话就是指的httpsession:一个客户端一个session会话,在客户端与服务器保持通信期间都会需要这个会话,所以集群服务器一定要保存这个session。问题是客户端的URL请求被director server均衡分发了,可能第一次访问的是第一个real server,第二次访问的是第四个real server,如果session只在第一个real server保存,而第四个real server就会认为客户掉线拒绝请求,所以你要考虑四个real server用一种机制保存共享所有客户的session。一些经典的共享session方式有:session复制、session粘连、session统一独立存储等。

建议看下一些集群架构方面的书籍,比如《大型网站系统与java中间件实践》。

C. JAVA服务集群与非集群的区别

集群肯定比非集群的处理能力强,但是你们集群不快可能是处理的瓶颈不在WEB到服务端的请求上,有可能是WEB端需要集群而不是服务端,更有可能是数据库出现处理瓶颈而不是服务端。
要根据日志分析和监控判断好到底慢在哪里。
一天才30000笔业务,对服务端程序来说简直不值一提的

D. java服务器集群后怎么实现数据共享

方法很多,常见的是使用zookeeper或者redis,都可以实现集群间数据的共享。

E. java 集群读取文件

  1. 正确的做法就是不要考虑集群,你的程序应该只关注于分析自己所属服务器的日志。以后需要集群的时候就服务器各自独立分析。如果数据需要合并,则应该是由你的持久层,而不是程序来完成,比如使用同一个数据库或者是分布式的数据库。

  2. DB存成什么格式应该是按照现有需求来。本身日志记录在文件里也是一种持久化,数据库只是多了数据管理的功能,所以本质上原始数据已经都记录下来了。之所以记录在文件里本身是考虑到数据库存储的效率问题,分析之后存储在数据库里也是为了查询能够更方便。所以如果不是很明朗,就不要去推测以后这些数据能干什么的,这种推测几乎是没有意义的。记录在数据库里的数据应该体现成现有需求里的数据,待到以后有新需求,在程序中加入新的分析功能也不是很麻烦。

F. java支持class集群模式吗

支持。
Java具有多线程功能,可以实现class集群模式。
分布式是指将不同的业务分布在不同的地方, 而集群指的是将几台服务器集中在一起,实现同一业务,分布式中的每一个节点,都可以做集群, 而集群并不一定就是分布式,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。

G. JAVA WEB项目集群部署问题

根据中间件不同部署方式也不同。tomcat下面就要分别部署了,weblogic支持分别部署,也支持统一部署(两种方式各有优缺点,推荐分别部署)。
中间件基本上都支持session共享复制,不过实现方式可能有点区别(有的是基于容器,有的是基于memcache等等)。

H. java搭建分布式集群项目大概需要多少台服务器

超过一台都可以叫集群,只有一台也可以算分布式,需要多少台服务器,主要看你的项目有多少模块,需要多高的性能。没有什么硬性要求,不用纠结

阅读全文

与java集群分布相关的资料

热点内容
python代码精简 浏览:455
文件加密了怎么找到了 浏览:193
jellyfin插件怎么选择主服务器 浏览:836
asp用户注册源码 浏览:48
什么是照片压缩文件 浏览:392
java调用js代码 浏览:979
昆山市民app怎么修改身份信息 浏览:779
php登陆次数 浏览:744
python字符转成数字 浏览:822
海川用的是什么服务器 浏览:376
口才是练出来的pdf 浏览:458
云服务器哪个公司性价比高 浏览:517
源码论坛打包 浏览:558
php怎么做成word 浏览:692
python批量生成密钥 浏览:492
程序员要不要考社区人员 浏览:150
app的钱怎么充q币 浏览:814
android银行卡识别 浏览:756
怎么在app投放广告 浏览:11
手机文件管理怎么看app名称 浏览:192