cancel
Showing results for 
Search instead for 
Did you mean: 

Alfresco Session Clustering on OC4J instance

raaj
Champ in-the-making
Champ in-the-making
As described in the HA doc provided,  that client session replication is not supported by alfresco.

What does that mean? Does it mean, that client session replication cannot be reached even if the application server(oc4j) generally supports it- eg. oc4j instance cluster supports session replication , and as far as I know it is enough all the sessions items implement Serializable. I consider session replication a major feature of HA solution, because without this fail-over cannot be reached if one node fails, or at least is significantly restricted. Considering this, does it have sense at all to have the environment clustered at application server level with the all features it provides in addition to alfresco application level?
I mean, if eg. for the solution "Sticky Client Sessions with Simple Repository Clustering" does it have sense to have "Web Server A" and "Web Server B" as cluster nodes from OC4J point of view…

We have tied to achive it </distribute> tag in web.xml of alfresco but  didn't work out.

Kindly suggest, how do we achive it?
2 REPLIES 2

kevinr
Star Contributor
Star Contributor
All the session data in Alfresco web-client is not fully serializable. We have solved this for 2.2Enterprise - and also should be available in the next 2.9 community release.

Kevin

sunfriend
Champ in-the-making
Champ in-the-making
As a workaround for v2.1.0 Community, i've tried the http://wiki.alfresco.com/wiki/High_Availability_Configuration_V1.4_to_V2.1#Clustered_Login_Credentia...  setting Sticky session with login credentials failover but unfortunately I cannot make it work properly.

More configuration details:
- JDK 5.0
- 2 JBoss 4.0.5.GA (not in cluster)
- 1 apache 2.2.4-70.2 as a load balancer
- Open Suse 10.3

Apache2 workers:

# Define list of workers that will be used
# for mapping requests
# The configuration directives are valid
# for the mod_jk version 1.2.18 and later
#
worker.list=loadbalancer,status

# Define Node1
# modify the host as your host IP or DNS name.
worker.nodo1.port=8009
worker.nodo1.host=nodo1
worker.nodo1.type=ajp13
worker.nodo1.lbfactor=1
# worker.nodo1.connection_pool_size=10 (1)

# Define Node2
# modify the host as your host IP or DNS name.
worker.nodo2.port=8009
worker.nodo2.host=nodo2
worker.nodo2.type=ajp13
worker.nodo2.lbfactor=1
# worker.nodo1.connection_pool_size=10 (1)

# Load-balancing behaviour
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=nodo1,nodo2
worker.loadbalancer.sticky_session=1

# Status worker for managing load balancer
worker.status.type=status

and each JBoss has it's own jvmRoute set,
/home/user/tools/jboss-4.0.5.GA/server/nodo2/deploy/jbossweb-tomcat55.sar/server.xml



<Engine name="jboss.web" defaultHost="nodo2" jvmRoute="nodo2">

<attribute name="UseJK">true</attribute>

and /home/user/tools/jboss-4.0.5.GA/server/nodo1/deploy/jbossweb-tomcat55.sar/server.xml



<Engine name="jboss.web" defaultHost="nodo1" jvmRoute="nodo1">

<attribute name="UseJK">true</attribute>

I think that I'm missing something. Index replication works fine.

Do I have to deploy both jboss instances as a cluster?
Hope somebody could help me, thanks in advance.
Joan.