`
javasogo
  • 浏览: 1815759 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多

集群是保证大型应用高可用的重要手段之一,应用服务器的集群也是目前最常见的集群操作方式。

通过借鉴我的同事之前的经验及相关资料,这里制作了2中环境的集群:一种是直接使用Apusic自带的负载均衡器,制作集群。这样的集群不需要额外的负载均衡器,配置也是非常方便。另外,就是使用apache做负载均衡器,制作集群。下面分别介绍两种方式的操作过程。

  • 使用Apache做负载均衡器

Apache的HTTP Server是目前最常见的负载均衡器,由于其开源免费并且效果相对不错,深受广大用户的喜爱。

首先 ,需要下载一个apache服务器,下载地址:http://httpd.apache.org/download.cgi 。可以根据自己实际情况,下载需要的apache版本。这里使用的是Windows环境下的2.2.15版本。

其次 ,添加apusic的集群域。双击%APUSIC_HOME%\bin下的config.cmd文件,打开域管理工具,依次选择“1- 创建一个新的Apusic域”--“1- 选择系统默认模板”--“2- 集群”(这里创建一个集群模板的域)--“选择默认路径”--“输入域名称”--“输入服务监听端口”--“输入服务器SSL安全监听端口”,创建一个集群域。集群域创建完成后,可以在%APUSIC_HOME%\domains\下,看到按照之前输入的域名创建的目录,此时的域目录已经将所有必须的文件及目录创建完成,只需要将需要启用的应用配置完成即可。假设我们创建的域名为:domain1,其服务监听端口为:7777。

再次 ,修改apusic.conf文件,在文件中添加集群服务信息。内容如下所示:

然后 ,修改apusic.conf中的Session服务信息,保证Session的高可用。推荐使用Session粘滞,以减少负载均衡器频繁切换造成的压力;另外,为防止集群中网络风暴的产生,建议使用配对的session复制策略。关于SessionService的配置信息如下所示:

说明:默认情况下,在创建完成集群域之后,关于集群与Session服务的配置信息已经创建完成,唯一需要修改的地方是SessionService中的“DestorySessionOnApplicationStop”属性值,默认是True,需要将其修改为“False”,以保证集群中的某一台机器宕机或发生故障时Session不会丢失。

接下来 ,需要修改%APUSIC_HOME%\domains\domain1\config\下面的vm.options文件,在其中加入“com.apusic.jvm.route=ApusicCluster”,来配合apusic.conf中关于Session粘滞的配置,保证Session粘滞正常。其中“ApusicCluster”为apusic.conf中ClusterService下配置的ClusterName。

另外,由于Apache的Http Server对于负载均衡的bug(不知道最新的版本是否已经修订,先按照经验来),需要在vm.options中加入“-Dapusic.redirect.proxy=true”。

在完成对Apusic相应的配置之后 ,修改apahce的httpd.conf文件(路径:%APACHE_HOME%\conf),释放负载均衡的服务:

最后 ,在httpd.conf文件末尾,添加集群中的成员,其配置信息如下所示:

其中,“stickysession=JSESSIONID”用于说明使用session粘滞;“Proxy balancer”下属的信息,则说明了加入集群的各个成员及各自的端口、域等信息;“loadfactor”则指明集群中各成员的负载比例,例子中是1:1。BalancerMember为后置机节点,后面的值为后置机的地址和端口。Loadfactor为负载权重。当用户想使用会话粘滞(Session-Stick),可以在ProxyPass / balancer://test/ 后面加入stickysession=JSESSIONID,当用户想使用失效转移时要在后面加入nofailover=off,同时在每个BalancerMember最后面加入route=serverName。

至此,使用Apache Http Server做负载均衡器的Apusic集群配置完成。重启Apache,然后启动Apusic对应的服务,集群即创建完成。

  • 使用Apusic内置的负载均衡器

Apusic本身内置负载均衡器,可以直接借助Apusic的负载均衡器,创建一个Apusic集群。创建Apusic集群,只需要在Apusic中新创建一个域,例如,此处创建一个名为“balancer”的域,修改此域中loadbalancer.conf的内容,此文件中已经有“LoadBalancer”相关配置信息,修改“LoadBalancer”下的“BackendServers”属性为需要加入集群的各Apusic服务,不同的服务之间用逗号分隔,例如:

Apusic负载均衡器默认情况下是会话粘滞(session-stick)的,同时采用轮循的策略选择可用节点。当然你也可以关闭会话粘滞,只要在LoadBalancer服务中,增加属性:

就可以关闭会话粘滞。如果想采用其他策略来选择节点,可以增加属性:

其中Value值可以选择:Random,Round-Robin,LoadWeight.注意当用户选择LoadWeight的时候,还需要增加属性:

来标识权重的值。其值与服务器地址列表中的服务器一一对应。此外,用户还可以扩展自己的负载均衡策略,只要实现LoadBalancePolicy接口,同时增加属性:

其中Value值为用户自定义的类。当两个属性BalancePolicy,BalancePolicyClass同时存在时,BalancePolicyClass的优先级高。

最后,当上面的配置完成后,负载均衡器可以通过命令行方式启动,不同的是需要增加-config参数指明负载均衡器的配置文件,例如:java -classpath E:\apusic\lib\apusic.jar; E:\apusic\lib\javac.jar;E:\apusic\lib\mejb.jar;E:\apusic\common\javaee.jar; com.apusic.server.Main -root E:\apusic\domains\mydomain -config /config/loadbalancer.conf。最终,使用Apusic做负载均衡的Apusic集群创建完成!

Apusic不仅仅支持Apache做负载均衡器,还支持其他的Http Server,(比如微软的IIS)做负载均衡器,具体配置请参考相应资料。

经过测试,使用Apusic做为负载均衡器,可以实现异构系统环境下的集群,而且可以保证Session的一致性(幂等性)。但是,经过测试,发现在异构环境下,使用Apache做负载均衡,没法保证幂等性,这个不知是配置出现问题,还是本身不提供相应的机制。

分享到:
评论

相关推荐

    Apusic+Apache集群配置.pdf

    Apache 集群配置与 Apusic 应用服务器整合是实现高可用性和负载均衡的重要方法。在这个配置中,Apache 作为前端的负载均衡器,负责接收客户端请求并根据预设策略将其分发给后台的 Apusic 服务器。Apusic 是一个企业...

    Apusic+Apache集群配置[文].pdf

    通过这样的配置,Apache和Apusic集群可以提供高可用性、负载均衡的服务,同时通过性能优化确保系统在高并发场景下的稳定运行。对于大型Web应用,这种架构提供了必要的扩展性和容错性,保证了用户体验的连续性和一致...

    apache2.2+apusic6.0负载配置指南(中望)

    - 更新`%apusic%\domains\mydomain\config\apusic.conf`,配置`ServerName`、`ClusterName`、`LoadWeight`、`ServerName`和`ReplicationPolicy`,定义服务集群和服务名称。 4. **Apusic6.0的负载均衡服务配置**: ...

    Linux环境下使用Apache搭建Apusic应用服务器集群

    ### Linux环境下使用Apache搭建Apusic应用服务器集群 在IT领域,构建高效稳定的应用服务器集群是企业级服务的关键一环。本文将深入解析如何在Linux环境下,利用Apache与Apusic搭建应用服务器集群,并实现负载均衡,...

    金蝶Apusic V10 应用服务器用户管理手册

    在分布式环境中,Apusic V10支持集群部署,通过负载均衡和故障转移机制,确保服务的高可用性。此外,其提供的热升级和热部署功能使得在不影响服务的情况下进行软件更新成为可能。 总的来说,金蝶Apusic V10应用...

    Apusic密码修改指引

    在Apusic系统中,管理员用户(admin)是最基本也是最重要的账户之一,用于进行系统的管理和配置工作。为了保障系统的安全性,定期更换密码是必要的。 **操作步骤:** 1. **登录Apusic控制台:**通过IE浏览器或其他...

    EAS apusic5.0 许可

    在安装和配置Apusic5.0时,用户需要按照指南输入或导入此许可证文件,以确保软件能够正常启动并运行。 在实际操作中,企业应妥善保管这个许可文件,避免丢失或泄露,同时也要关注软件的更新和维护,确保其始终处于...

    EAS Apusic2016年的临时许可

    2. **高可用性和可扩展性**:设计用于大规模分布式环境,EAS Apusic支持集群部署,能实现负载均衡和故障转移,确保服务的高可用性。同时,其模块化结构允许灵活的扩展,以适应不断增长的业务需求。 3. **安全管理**...

    2021年apusic临时许可(5个连接数).zip

    【标题】"2021年apusic临时许可(5个连接数)"指的是Apusic在2021年提供的一种特殊许可服务,允许用户在限定时间内使用其软件产品,特别是针对五个并发连接数进行优化配置。Apusic是阿帕奇软件基金会下的一款企业级...

    金蝶Apusic应用服务器 V10企业版 用户手册+技术白皮书+调优手册

    3. **分布式支持**:详述集群配置与管理,支持负载均衡和故障转移,实现高可用性。 4. **兼容性**:列出支持的各种Java标准和规范,如Servlet、JSP、EJB等,以及与其他中间件的集成能力。 5. **扩展性**:讨论插件...

    EAS_Apusic_2021.7z

    在实际操作中,用户通常需要按照Apusic提供的文档指引,将EAS_Apusic_2021.xml文件配置到EAS服务器的相应位置,激活测试许可。这样,开发团队就能在许可期限内自由地进行开发和测试工作,而不必担心违反版权法规。 ...

    AAS-V9.0用户手册.pdf

    本手册针对金蝶Apusic应用服务器V9.0版本的用户,提供了详细的功能修订说明、技术概览、管理监控、集群服务、快速开始安装指南等内容。 ### 功能修订说明 在应用服务器V9.0功能修订说明部分,手册介绍了新特性概述...

    AAS-V10.0用户手册.pdf

    Apusic V10.0版本是对该应用服务器的一个重要更新,它包含了对系统管理、集群配置、安全性和性能等方面的增强。 在用户手册中,快速开始指南部分为新用户提供了从基本介绍到安装、使用以及删除Apusic应用服务器的...

    AAS-V10.zip

    - **集群**:多个Apusic服务器可以组成一个集群,实现负载均衡和故障转移。 - **热部署**:允许在不中断服务的情况下更新应用程序。 - **安全管理**:包括角色、权限和认证机制,确保只有授权的用户和应用程序可以...

    行业分类-设备装置-基于国产化平台的高可靠集群构建方法.zip

    4. 软件安装与配置:安装操作系统、数据库、中间件等,进行集群软件的配置。 5. 测试验证:进行全面的功能和压力测试,确保集群的稳定性和可靠性。 6. 上线运维:定期进行维护检查,监控集群状态,及时处理问题。 ...

    AAS-V9.0-Manual.pdf

    金蝶Apusic应用服务器V9.0用户手册详细介绍了该服务器产品的安装配置、功能特性、集群服务等技术细节,这些信息对于IT专业人员来说至关重要。在详细解释各知识点之前,首先需要明确金蝶Apusic应用服务器本身是一款...

    AAS-V10-sp2.zip

    在压缩包文件中,"ApusicAS"很可能就是AAS的核心组件,包含了服务器运行时环境和相关配置文件。而"nodemanager"则是金蝶中间件的节点管理工具,用于远程管理和监控AAS服务器节点,确保集群中的各个节点正常工作。 ...

    AAS应用服务器用户手册

    - **查看修改集群服务**:说明了如何查看和修改集群配置。 #### 第19章 使用负载均衡器 - **ApusicLoadBalancer**: - **负载均衡策略**:支持多种负载均衡算法。 - **Session复制策略**:实现了会话数据的跨...

    金蝶ESB企业服务总线7.0用户手册

    **金蝶Apusic企业服务总线(AESB)V7.0**是一款由金蝶中间件有限公司开发的企业级服务集成平台。该版本着重介绍了AESB的核心组件及其功能特性,包括AESB本身、AESB-Agent、AESB-Designer和AESB-Monitor等关键组成...

Global site tag (gtag.js) - Google Analytics