Giter Site home page Giter Site logo

jelastic-jps / glassfish Goto Github PK

View Code? Open in Web Editor NEW
5.0 4.0 11.0 259 KB

GlassFish Cluster with Automatic Scaling

License: Apache License 2.0

JavaScript 100.00%
glassfish glassfish-server cluster clustering glassfish-cluster scalability auto-scaling docker docker-cluster worker-nodes

glassfish's Introduction

GlassFish with Automatic Clustering and Scaling

Java EE often looks like a black box when it comes to deployment, clustering and scaling. You can get rid of this complexity using pre-configured clusters in domain mode with automatically scaled instances and standard flows for zero code change deployment. The default topology and scaling triggers can be easily adjusted.

Follow the link to get more details on how clustering works and high availability is configured, as well as how to test this implementation.

GlassFish Cluster Topology

Due to the native GlassFish clustering architecture, its topology includes three node groups:

  • Load Balancer(LB) - intended to process all incoming requests, sent to the cluster, and distribute them between worker nodes
  • Worker Node(W) - application server to handle the required app and web services
  • Domain Administration Server (DAS) - management instance which performs centralized control of the cluster nodes and configure communication between them via SSH

Current implementation of Jelastic scalable GlassFish cluster is built on top of Docker containers. This ensures additional reliability through operating each node as an isolated instance and enables simple container update procedure.

Upon deploying this solution, you’ll get the already configured and ready-to-work GlassFish cluster inside the Cloud, that consists of DAS node, 2 GF application servers (workers), NGINX load balancer and is secured by Jelastic SSL.

For the detailed guidance on this JPS package installation and management, refer to the GlassFish Cluster with Automatic Load Balancing page.

Automatic Scaling and Clustering Configuration

GlassFish cluster package automatically adjusts a number of Worker nodes based on current cluster load (up to 10 instances per layer) according to the following conditions:

  • +1 node if RAM usage > 70% for at least 1 minute
  • -1 node if RAM usage < 40% for at least 10 minute

The appropriate modifications are automatically applied to DAS and Load Balancer configs, and multiple application server instances are automatically interconnected that implements the commonly used clustering configuration.

In case you’d like to change the conditions of automatic nodes’ scaling, refer to the appropriate triggers parameters within the Automatic Horizontal Scaling settings section.

Cloud Hosting Deployment

Public Cloud

To instantly host your own scalable GF cluster, click the GET IT HOSTED button below. Within the opened frame, specify your email address, choose one of the Jelastic Public Cloud providers and press Install.

Deploy

Private Cloud

If working within Jelastic Private Cloud, copy link of the manifest.jps file above and import it to the required Jelastic installation.

glassfish's People

Contributors

andretadeu avatar arefox avatar dmytrozubelevych avatar ihorman avatar lazarenkoalexey avatar mralexzt avatar siruslan avatar sych74 avatar vlobzakov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.