一聚教程网:一个值得你收藏的教程网站

热门教程

J2EE clustering 1---有些老了

时间:2022-07-02 17:28:44 编辑:袖梨 来源:一聚教程网

J2EE clustering 1
概述
如果想要建立一个可伸缩的高可靠性的网站,就需要了解集群技术(clustering).本文中,Abraham Kang介绍了J2EE集群, 怎样实现集群, 并列出Bluestone Total-e-server, Sybase Enterprise Application Server, SilverStream Application Server 和 WebLogic Application Server在集群技术上有什么区别.基于这些知识,你就能够设计自己有效且高效的 J2EE applications.
Abraham Kang
企业越来越多地选择Java 2, Enterprise Edition (J2EE)来开发它们基于任务的网上应用.在 J2EE framework中, 集群技术能保证最少的downtime,最大的伸缩性.一个集群就是一组application servers透明地运行J2EE应用服务,就好像它们是一个整体. 在集群中必须提供额外的机器.若要将服务是健降至最短,其中的每个组件都必须是冗余的.
在本文中,我们将获得关于集群的基本知识和集群的方法,以及重要的集群服务.由于业内集群技术差别很大,我们将比较每种技术的优劣.更进一步的,我们将讨论与集群有关的application server将要实现的特性.
为联系实际应用,我们将看一看HP Bluestone Total-e-Server 7.2.1, Sybase Enterprise Application Server 3.6, SilverStream Application Server 3.7, 和BEA WebLogic Server 6.0 各是怎样实现集群的.
本文的第二部分中,我们的讨论将涉及集群的编程和差错恢复策略,并测试我们所提到的4种application server产品是怎样伸缩规模和进行差错恢复的.
集群的定义
J2EE application server的供应商把集群定义为一组计算机一起工作,提供透明的企业级服务(支持 JNDI, EJB, JSP, HttpSession,组件差错恢复等).他们故意定义得很模糊,因为他们对它的实现各不相同.一部分开发商在一组互相独立的机器前端放置一个dispatcher,dispatcher接受用户的请求,然后用HTTP redirect header将请求转到集群中一台特定的server上.另一部分开发商则实现了一个紧密集成在一起的机器联合,每台机器能完全感知它周围其它机器的存在,连同驻在它们之上的对象.
除了机器方面的集成,集群还包含冗余和出错恢复:
负载平衡器:进入集群的单一的入口点,站点或application server的流量指示器
网关路由器:内部网络的出口点
多层交换器:包过滤或帧过滤,确保每台机器仅收到和自己相关的信息
防火墙:端口级别过滤,防止hacker进入集群或内部网络
SAN (Storage Area Networking)控制器:把application servers, Web servers和databases连接到后端存储介质,管理数据该写到哪个硬盘;以及出错备份