When developing and running your applications on OpenShift you will discover that most of the hard-work related to configuration, scaling, replication, and deployment is already covered by the specialization of the technology for the OpenShift platform.
The key capabilities available on OpenShift that come from the JBoss Middleware technologies are:
Below you will see examples of how these technologies can be utilized to solve real world problems.
As your application dependability and load grows, you realize that not only you need a highly-available environment, but also the ability to add and remove instances from your cluster depending on load.
JBoss EAP 6 on OpenShift comes out of the box configured to automatically manage and discover new instances of your application as they come and go as a standard implementation. With this, your application replicas will share session information between them to maintain high availability in case of unexpected failures or programmed maintenances.
If you intend to also deploy a database on OpenShift, you can take advantage of the pre-built application templates for PostgreSQL, MongoDB, or MySQL, all with the possibility of using ephemeral/stateless instances or persistent/stateful containers, where a storage volume is attached to your running database to avoid data loss. In case you need to connect to a database that resides outside of the OpenShift platform, you can also do that via a service definition.
You are also free to customize your JBoss EAP instances the way you have always done, but rest assured we are solving the hard problems for you.
No matter what your industry is, there will always be the need to connect your applications to other services or systems.
Be it for new microservices-oriented workloads, connecting SaaS applications, connecting APIs, connecting IoT solutions, or the sharing of information between legacy systems, there's a JBoss Fuse connector for that. With a wide range of more than 150 supported connectors and the 200+ available in the community, it is unlikely that your integration problem isn't already covered. JBoss Fuse includes Apache Camel, which is a popular implementation of the most commonly used enterprise integration patterns.
So imagine you have an integration service with a route that starts with a message queue based endpoint, then you apply some transformation on the message, and based on its content, you decide where to go next.
When you deploy this integration service, it becomes an independent unit of schedule and scale on the OpenShift platform, allowing for easy addition or removal of more replicas of this route to make sure your SLAs are maintained.
Fuse Integration Services enables creation of pattern-based and modular microservices-style integration services that can be deployed, removed, and redeployed in a continuous fashion using the underlying OpenShift capabilities for more rapid connections.
Also, each route deployment, no matter the number of replicas it might have, can be seen as a single unique service with its load being balanced across all of your replicas. Client applications see one endpoint, and the platform takes care of spreading the load.
Most applications also need to perform async communications, and the use of topics and queues is often a solution for this. Available with JBoss Fuse and JBoss A-MQ, you can rely on OpenShift to guarantee your message brokers are always up and that no message is lost with the usage of stateful containers and storage volumes.
The specialization of A-MQ for OpenShift also automatically creates a mesh configuration for your brokers as you add more replicas to your cluster.
Scalable applications hosted in the cloud need to eliminate performance bottlenecks so that they can take full advantage of the cloud's elastic resources.
JBoss Data Grid allows you to keep your application data close to your application in the memory for fast, low-latency data processing, eliminating disk bottlenecks and minimizing the use of cloud-based persistent storage. It also enables transparent sharing of application data across a pool of application instances, which simplifies design and reduces development time. Furthermore, linear scalability and high availability is ensured through automatic data distribution, partitioning, and replication across the cluster. JBoss Data Grid also provides comprehensive data security with encryption and role-based access. In short, JBoss Data Grid enables cloud application with in-memory speed, and elastic data management.
JBoss Data Grid combined with the OpenShift Scheduler, the technology that decides where the apps should be deployed, becomes such an integrated solution that you can set up replication rules to always keep your Data Grid node deployed as close as possible to your application. Data Grid works with text-based endpoints, such as REST, as well as with fast binary protocols, such as Hot Rod.
The days where you would keep your business logic embedded as application code are gone. In today's changing world of engagement solutions, it no longer makes sense having to change your application code to reflect new business requirements, regulations, or a new sales bundle, and the same must be applied for cloud enabled or cloud native applications. The real time decision service provided by JBoss BRMS enables you to run your application business logic and rules outside your application on a platform that is ready to handle spikes and scale as needed.
You develop your rules on the BRMS workbench you already know, and when it's time to run them, you delegate that to OpenShift, which will take care of creating a scalable network of rules execution servers with a common service endpoint.