High Availability and Scalability in JBoss

Ratings:
(4)
Views:0
Banner-Img
  • Share this blog:

 

Requirements

Fault Tolerance

Reliability

Uptime guarantee

Stable Throughput - Scalability

Provide consistent response times in light of increased system load

Manageability of Servers

Server upgrade with no service interruptions

 

To enrich your career and become a JBoss professional, visit Tekslate, the global online training platform:" JBoss Training". This course will help you achieve excellence in this field.

Clustering:

General understanding cluster is a set of nodes that communicate with each other and work toward a common goalCluster provide these functionalities:          Scalability (can we handle more users? can we add hardware to our system?)          Load Balancing (share the load between servers)          High Availability (our application has to be uptime close to 100%)          Fault Tolerance (High Availability and Reliability) State is conserved even if one server in the cluster crashes

High Availability and numbers

Uptime Downtime per year
98% 7.3 days
99% 87.6 hours
99.9% 8.8 hours
99.99% 53 minutes
99.999% 5.3 minutes

Clustering and JBoss Support clustering with a built-in configuration ⇒ all configuration Can also be integrated to an external balancer A cluster is defined by          Multicast Address          Multicast Post          Name Multicast is the protocol which allows nodes inside to a cluster to communicate without knowing each other. You can think of multicast of a radio or a TV channel, only those who are tuned received the information. Communication between nodes is provided by JGroups, which is a library for multicast communication.

       All JBoss clustering services are built on top of JGroups

JBoss web architecture Base element to communicate is the Channel (quite equivalent to a socket). All messages received and sent over a Channel have to pass through the protocol stack. JBoss AS serves both static and dynamic content. Not scalable. Additional users can only be handled by improving the performance of the server (e.g. adding additional CPUs, more memory). No fault tolerance. If the JBoss AS server goes down, the entire service becomes unavailable. External Load Balancer Architecture external load balancer Add one or many web servers to balance the load to multiple JBoss AS nodes typically running on separate physical servers. Additional user load can be handled by adding another server running JBoss AS. If anyone of the JBoss AS nodes fail, the service is still available through other JBoss AS servers. General configuration for the following examples          Copy the all directory and create two directory (e.g. node1 and node2)          To run the first node : ./run.sh -c node1 -b 127.0.0.1 -Djboss.messaging.ServerPeerID=1          To run the second node : ./run.sh -c node2 -b 192.168.1.180 -Djboss.messaging.ServerPeerID=2

You need to bind the servers to different addresses or else one of the JBoss instances won’t start. JBoss.messaging.ServerPeerID has a unique value for each instance, this is required for JMS clustering services.

 

About Author
Authorlogo
Name
TekSlate
Author Bio

TekSlate is the best online training provider in delivering world-class IT skills to individuals and corporates from all parts of the globe. We are proven experts in accumulating every need of an IT skills upgrade aspirant and have delivered excellent services. We aim to bring you all the essentials to learn and master new technologies in the market with our articles, blogs, and videos. Build your career success with us, enhancing most in-demand skills in the market.


Stay Updated


Get stories of change makers and innovators from the startup ecosystem in your inbox