Liferay JBoss Master/Slave Failover Mode Configuration
1Prepare software
1.1Apache 2.2 httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
1.2LF JBoss(2 instances)
1.3mod_jk.so tomcat-connectors-1.2.37-windows-i386-httpd-2.2.x.zip
2mod_jk.so
2.1Rename to mod_jk.so and copy to %APACHE_HOME%/modules directory
2.2Load the mod_jk.so connector
Modify %APACHE_HOME%/conf/httpd.conf file, add below line to bottom line.
LoadModule jk_module modules/mod_jk.so
2.3Configure mod_jk for cluster nodes.
Modify “httpd.conf” file, add below lines to bottom line.
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkMount /* loadbalancer
2.4Need to create a file named workers.properties in conf directory. And add below lines in it.
# Define list of workers that will be used
# for mapping requests
worker.list=loadbalancer,status
# Define Master
worker.master.host=10.25.153.107
worker.master.port=8009
worker.master.type=ajp13
worker.master.lbfactor=1
worker.master.cachesize=10
worker.master.cache_timeout=600
worker.master.socket_timeout=5
worker.master.recycle_timeout=20
worker.slave.prepost_timeout=1
worker.master.recovery_options=0
worker.master.connection_pool_timeout=5
worker.master.ping_mode=A
worker.master.ping_timeout=500
worker.master.connect_timeout=500
# Define prefered failover node for master
worker.master.redirect=slave
# Define Slave
worker.slave.host=127.0.0.1
worker.slave.port=8009
worker.slave.type=ajp13
worker.slave.lbfactor=1
worker.slave.cachesize=10
worker.slave.cache_timeout=600
worker.slave.socket_timeout=60
worker.slave.recycle_timeout=100
worker.slave.prepost_timeout=50
worker.slave.recovery_options=0
worker.slave.connection_pool_timeout=60
worker.slave.ping_mode=A
worker.slave.ping_timeout=20000
worker.slave.connect_timeout=20000
#Disable slave for all requests except failover
worker.slave.activation=disabled
# Load-balancing behaviour
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=master,slave
worker.loadbalancer.sticky_session=1
# Status worker for managing load balancer
worker.status.type=status
3Configure JBoss to Cluster node.
3.1In file standalone/configuration/standalone.xml, add content as grew part below
<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" instance-id="master" native="false">
<configuration>
<jsp-configuration development="true"/>
</configuration>
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
<connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp"/>
<virtual-server name="default-host" enable-welcome-root="false">
<alias name="localhost"/>
<alias name="example.com"/>
</virtual-server>
</subsystem>
3.2Add interface for specific ip
Add gray part as below, and change xxx.yyy.aaa.bbb to your jboss server ip.
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:127.0.0.1}"/>
</interface>
<interface name="unsecure">
<inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
</interface>
<interface name="specific-ip-interface">
<inet-address value=" xxx.yyy.aaa.bbb "/>
</interface>
</interfaces>
3.3Change below gray part according to the interface added above.
<socket-binding-group name="standard-sockets" default-interface="specific-ip-interface" port-offset="${jboss.socket.binding.port-offset:0}">
<socket-binding name="management-native" interface="specific-ip-interface" port="${jboss.management.native.port:9999}"/>
<socket-binding name="management-http" interface="specific-ip-interface" port="${jboss.management.http.port:9990}"/>
<socket-binding name="management-https" interface="specific-ip-interface" port="${jboss.management.https.port:9443}"/>
<socket-binding name="ajp" port="8009"/>
4Configure Portal portal-ext.properties
cluster.link.enabled=true
lucene.replicate.write=true
5Test cluster server
5.1Visit URL http://localhost, you will see apache server default page.
5.2Visit URL http://localhost/c/portal/login twice with two browsers, you will see
the same page which response by master node as below.
5.3Shut down master node, observe the page from salve node as below.
相关推荐
【标题】:“Liferay集群负载均衡配置” 【描述】:“Liferay是一款开源的企业级门户平台,它提供了丰富的功能,如内容管理、社交网络、工作流程等。为了提高系统的可用性和性能,通常会采用集群部署策略,配合负载...
本书详细阐述了Liferay在集群环境下的配置和优化,包括数据同步、负载均衡以及故障转移策略,帮助读者实现Liferay系统的稳定运行。 4. 《Liferay Portal 7.x Theming》 对于希望自定义Liferay外观的设计师或开发者...
6.2版本提供了缓存机制、负载均衡和集群配置,开发者应了解这些设置以提升门户性能。 13. **安全与隐私** Liferay提供了多种安全机制,如SSL加密、访问控制和审计日志。开发者应遵循最佳实践确保数据安全。 14. ...
在进行Liferay的部署时,了解集群和高可用性配置也很重要。通过设置负载均衡器和复制策略,可以确保在多服务器环境中提供稳定的服务。 总之,Liferay教程将涵盖上述所有方面,从基础安装到高级开发,旨在为初学者...
- 为了优化性能,Liferay 支持缓存机制、负载均衡和集群配置。 10. **学习资源**: - 电子书是学习 Liferay 的宝贵资源,它们可能涵盖了入门教程、高级开发指南以及最佳实践案例。 通过对这些知识点的学习,...
2. **集群与高可用性**:在"Advanced Liferay Architecture-Clustering and High Availability.pdf"中,我们可能会学习到如何通过集群实现Liferay的高可用性。集群可以分摊负载,提高系统的容错性。设置适当的集群...
6. **liferay_4_installation_guide.pdf**:安装指南提供了在各种操作系统上安装和配置Liferay的步骤,包括硬件需求、数据库集成、集群部署等。对于初次接触Liferay的系统管理员,这是一份非常实用的入门教程。 7. ...
6. **模型监听器**:监听并响应如用户、组、博客等的创建、更新和查看,以及插件部署和集群消息传递等事件。 接下来,我们详细探讨创建和使用Liferay Hook的步骤: 1. **创建HOOK工程**:在Liferay IDE中,选择...
9. 企业级功能:Liferay还提供许多企业级的特性,例如单点登录、搜索引擎优化、集群支持等,这些都可能是学习重点。 10. 最佳实践和案例研究:介绍在实际开发过程中如何应用Liferay以及一些案例研究,帮助读者更好...
这个PoC ServiceBuilder是为了在Liferay集群环境中测试双字段主键的可行性和效果。 标签“Java”表明这个portlet和服务构建器是用Java编程语言编写的,Java是Liferay平台的基础,因为Liferay是一个基于Java的开源...
- **集群部署**:Liferay支持多节点集群,提供负载均衡和故障转移,确保服务的高可用性。 - **数据库复制**:采用数据库复制策略,保证数据的一致性和可靠性。 6. **Demo** PPT中的演示部分可能涵盖了实际操作...
3. 集群部署:为了提高可用性和性能,可以设置Liferay集群,实现负载均衡和故障转移。 四、Liferay 6二次开发 1. Portlet开发:基于MVC模式,使用Java和JSF、Spring等技术开发自定义portlet。 2. Theme定制:通过...
7. **性能优化**:如何通过缓存策略、数据库调优和集群设置来提升Liferay的性能。 8. **国际化和本地化**:Liferay支持多语言环境,开发者需要了解如何为Portlet添加多语言支持。 9. **部署和测试**:包括如何打包...
EJB 的使用主要是为了利用其分布式特性,如集群、缓存和事务管理。Hibernate 提供了CMP(容器管理持久性),确保数据持久化。每个 Portlet 的持久性数据都有单独的 ejb.xml 文件,通过 Ant 构建工具中的 build-ejb ...
在Liferay集群中,每个节点都是一个独立运行的Liferay实例,它们共享用户会话和数据,确保服务不间断。 "vs-system-portlet"的实现主要基于Java技术。Java在开发portlet时起着核心作用,因为Liferay本身是用Java...
3. **高级篇**:深入探讨Liferay的高级特性和最佳实践,例如集群部署、性能优化、安全增强等。 #### 四、技术要点 - **Portlet开发**:portlet是Liferay中的基本单元,用于构建页面内容。本书会详细介绍如何创建、...
这部分可能包含如何配置集群以支持高可用性和负载均衡,如何集成企业级身份验证和授权解决方案(例如LDAP集成),以及如何通过Liferay的APIs和企业集成模式(EIPs)与其它企业系统集成。此外,还可能包括对性能调优和...
### Liferay 6 管理员指南 #### 引言与概述 Liferay是一款功能强大的企业级开源门户平台,提供了丰富的特性和高度灵活的架构。《Liferay Portal Administrator's Guide》是由Richard L. Sezov Jr. 和 Stephen ...
6. **部署和维护**:了解Liferay的部署策略,包括集群和负载均衡,以及如何进行日常维护和性能优化。 ### 结论 Liferay是一个功能丰富的平台,适合那些希望构建高度定制化企业门户和社区的组织。通过深入了解其...