Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
RED HAT JBOSS ENTERPRISE APPLICATION PLATFORM 7 COMPARED TO ORACLE WEBLOGIC COMPETITIVE REVIEW INTRODUCTION •Overview of Java EE and application platforms Developers work with a wide variety of tools and languages to produce solutions that run on mobile devices, desktops, and servers. For server-side code, JavaTM is the most popular development language.1 Within the Java community, the expanded capabilities of Java Platform, Enterprise Edition (Java EE) are often used to support existing and new development projects. • Balancing platform functions and capabilities Three leading vendors offer Java EE application platforms: Red Hat, IBM, and Oracle. A fourth vendor, Pivotal, offers a Java-based application framework positioned as an alternative to Java EE. •Java application development architectures Establishing direct comparisons between Java application platforms can be difficult, because feature checklists, a common tactic, do not account for context or weigh individual features in relation to business use cases. Additionally, environments and IT infrastructures are constantly changing, and features may not cover platform performance in different environments — such as monolithic, hybrid, and microservices environments. Furthermore, DevOps compatibility, cloud availability, and the overall developer experience, as well as return on investment for application projects, must be considered. IN THIS COMPETITIVE REVIEW: •Java applications and cloud technology • Pricing and cost comparisons There are several critical environmental elements that can be examined, such as: •Administrative tools and feature parity in on-premise and cloud environments. •Support for both traditional and microservices architectures and development. •Availability of vendor-agnostic integration with other technologies. •Total cost of ownership. Red Hat® JBoss® Enterprise Application Platform (EAP) is a commercially supported Java and Java EE application platform. JBoss EAP can be run on traditional dedicated servers and virtual machines (VMs) often associated with existing application deployments, as well as with Java applications deployed using container and cloud technology. A single subscription for JBoss EAP supports on-premise and cloud deployments. This competitive review compares a mix of Red Hat technologies, including Red Hat JBoss EAP, to Oracle WebLogic 12 for on-site and cloud-based Java development. OVERVIEW OF JAVA EE AND APPLICATION PLATFORMS Java Platform, Standard Edition (SE) is built on Java language syntax and defines a set of general application programming interfaces (APIs) and basic objects and types, as well as classes for networking, security, database access, and other development capabilities. Java SE applications are executed within a Java virtual machine (JVM). 2 Java EE extends Java SE with APIs and a runtime environment for enterprise-scale applications. Oracle describes these as “multi-tiered, scalable, reliable, and secure network applications.”2 facebook.com/redhatinc @redhatnews linkedin.com/company/red-hat 1 TIOBE, TIOBE Index for September 2016. tiobe.com/tiobe-index/. redhat.com 2 “Differences between Java EE and Java SE.” Your First Cup: An Introduction to the Java EE Platform. Oracle, 2012. docs.oracle.com/javaee/6/firstcup/doc/gkhoy.html. The Java EE 7 specification includes more than 30 Java technologies — categorized into web, business, and enterprise information systems — with key technologies, including APIs, for functions such as: RED HAT JBOSS EAP FAST FACTS •Offers modular class loading, letting developers choose which classes to use—even custom classes •Can be used with Red Hat OpenShift Container Platform for container-based development • Handles traditional and microservice applications by combining modularity with container-based development • Includes a fully Java EE 7 compliant server •Objects and transactions, included in Enterprise JavaBeans (EJB) 3.2. •Messaging, included in Java Message Service (JMS) 2.0. •RESTful services, included in Java API for RESTful Services (JAX-RS) 2.0. •Persistence layers, included in Java Persistence API (JPA) 2.1. 3 The goal of Java EE is to provide a collection of standard APIs that offer a stable foundation for web and business applications, as well as portability between Java EE implementations. These capabilities offer broader development features than the default programming capabilities of Java SE. An often-overlooked fact is that the functionality of the Java EE specification does not vary between certified platforms. Red Hat JBoss EAP, IBM WebSphere Application Server, and Oracle WebLogic are all Java EE 7 full platform certified using the same criteria. While the code used to implement the Java EE 7 specification varies and contributes to differences in runtime performance, the Java EE 7 functionality itself is identical. As a result, the key differences between platforms relate to differences in the operating environments, such as open source project support and total cost of acquisition, and included features that are outside the Java EE specification, such as monitoring. COMPARING JAVA APPLICATION PLATFORMS IN PHYSICAL, VIRTUAL, AND CLOUD ENVIRONMENTS As IT environments continue to evolve, assessing how an application platform performs in onpremise or cloud environments is critical to successful operations. For on-premise environments, differentiating features can include broad support for virtualized environments, administration, management, and monitoring. In cloud environments, differences can include storage, networking, scaling, administration, and other features that require compatibility. Overall, it is important to determine if there is parity between on-premise and cloud features and whether these features are interoperable in both environments. Several significant categories are considered in this document to determine how well platforms perform in different environments, including: •Scaling. •Clustering. •Runtime administration. 3 “Java Platform, Enterprise Edition (Java EE) Specification, v7.” Oracle. PDF page 228-229. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 2 Red Hat JBoss EAP provides a mix of features beyond the Java EE specification that allow it to run equally well in multiple environments. Some features are seamless in these environments, with identical configuration and use. In other environments, tasks are identical — such as managing cloud instances — but native tools can be used to perform them in each environment. The goal of Java EE is to provide a collection of standard APIs that offer a stable foundation for web and business applications, as well as portability between Java EE implementations. The functionality in the Java EE specification does not vary between certified platforms. For example, JBoss EAP includes specific code for clustering, regardless of whether the implementation is running on-premise or in a Red Hat OpenShift cloud. When JBoss EAP is run on-premise, scaling and deployment are managed through a variety of administrative tools, including Red Hat JBoss Operations Network. When running in an OpenShift cloud environment, cloud-native administrative procedures are used. Differences in Oracle WebLogic in user-managed on-premise and cloud deployments are primarily found in the setup procedures. On-premise deployments provide the greatest flexibility for users, with complete control over infrastructure and WebLogic installation options. However, Oracle Java Cloud Service users are limited to configuring the number of cores per virtual CPU, as well as memory and storage options made available by Oracle. Oracle Java Cloud Service – SaaS [Softwareas-a-Service] Extension offers even fewer options. Oracle WebLogic offers parity between on-premise and cloud instances primarily because the Oracle Compute Cloud Service uses virtual machines. This offering provides provisioning, connection, and management of these virtual machines, regardless of the components or solutions running on them. While this service simplifies deployments by managing configuration, only a limited selection of WebLogic editions and configurations is available. The use of virtual machines lets users access standard Oracle on-premise tools in the cloud for all WebLogic offerings except the SaaS extension. However, relying on virtual machines means that Oracle does not provide a single Platform-as-a-Service (PaaS). Administrative tools for Oracle Java Cloud Service differ from the other tools used by applications that might run on it. As a result, users are given a consistent administrative experience for WebLogic but not for other middleware or applications deployed on Oracle Compute Cloud Service. BALANCING PLATFORM CAPABILITIES RED HAT JBOSS EAP AND FLEXIBLE PROFILES Users of a certified Java EE application platform such as Red Hat JBoss EAP often find that either the web profile or full platform capabilities defined in the Java EE specification are sufficient for an application platform runtime profile. However, some users want the flexibility to alter the runtime profile to optimize computing resource use — essentially tuning the application platform to provide only the capabilities needed. JBoss EAP includes a modular classloader system for controlling the class paths of deployed applications. Developers have fine-grained control of the classes available for their applications and can configure deployments to ignore classes provided by the application server in favor of their own. This control lets developers and administrators achieve the key combination of flexibility and isolation. For example, some existing applications can use Hibernate 3 instead of Hibernate 4 or use Log4j instead of native JBoss logging. In addition, dynamic modules are only loaded when required, helping to reduce platform startup times. The Java EE 7 web profile contains a subset of technologies included in the full platform. This profile is designed for developers who do not need the full set of Java EE APIs to run applications. Red Hat JBoss EAP is certified for both web and full profile support. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 3 ORACLE WEBLOGIC AND DENSELY DISTRIBUTED APPLICATIONS Oracle WebLogic Server offers limited modularity compared to JBoss EAP. Oracle WebLogic Server Enterprise Edition is arguably designed for running densely distributed, full-featured Java EE applications. The multitenancy feature in WebLogic 12.2.1 supports this conclusion. The sole purpose of this separately licensed add-on — a tool that lets multiple isolated tenants run applications on the same instance — is to increase individual server density for consolidation. Administrators have very few other options to reduce their WebLogic footprint. WebLogic Express (WLX), a startup mode, speeds startup of the WebLogic server by disabling EJB, JMS, and Java EE Connector Architecture (JCA) containers — leaving only the web container enabled. In addition, Oracle WebLogic offers a class caching feature for development use that can further shorten WebLogic startup times. However, class caching is not supported for production use.4 Oracle WebLogic is not web profile certified. While these capabilities exist in the full platform specification WebLogic Server is certified for, WebLogic lacks a startup option to only run the technologies associated with the web profile. As a result, using WebLogic can lead to unneeded overhead if only web profile capabilities are needed to support deployed applications. JAVA APPLICATION DEVELOPMENT ARCHITECTURES Typically, organizations deploy an application platform that can be integrated into the application development architecture and environment. However, as those environments evolve, IT departments may use different environments for older and newer applications. Hybrid IT environments must offer parallel support for development that focuses on stability as well as development that focuses on agility. MONOLITHIC APPLICATIONS Because of its longevity, Java EE is often viewed as ideal for mode one, or stability-focused, development. Java EE features are designed and adapted for large, full-featured applications, with Java EE applications packaging everything needed to run in a single deployment unit — although these may require additional external dependencies to support certain technology, such as databases. This approach is called monolithic architecture. Instead of this monolithic approach, organizations may argue for smaller teams with disparate delivery schedules for enterprise applications — essentially microservices and 12-factor architectures. However, while these design philosophies make sense for certain companies and applications, many companies will continue to use monolithic applications. To maintain existing Java EE applications along with creating new, service-based applications, an application platform must support both architectures. This hybrid IT development model is effectively supported by Red Hat JBoss EAP 7. JBoss EAP can be used on-premise for traditional application environments, in Red Hat OpenShift for container-based development and continuous integration, or in private and public clouds, such as Microsoft Azure. 4 “Tuning WebLogic Server: Tuning Class and Resource Loading > Class Caching.” Oracle Fusion Middleware Tuning Performance of Oracle WebLogic Server. Oracle. docs.oracle.com/middleware/1221/wls/PERFM/wls_tuning. htm#PERFM927. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 4 The architectural flexibility of JBoss EAP supports heterogeneous environments for both Java EE version and deployment platform. With this architecture, different versions of Java EE or applications can run simultaneously. JBoss EAP 7 domains can manage JBoss EAP 6 domains, unifying management under a single tool for both platforms. Some Java EE 6 applications can be moved to a Java EE 7 application platform, although migration can cause compatibility issues. In those cases, developers can continue to use JBoss EAP 6, which is a Java EE 6 certified application platform. Oracle WebLogic Server is similar to JBoss EAP in that each product version is only certified for a single version of the Java EE specification. Both JBoss EAP 7 and Oracle WebLogic Server 12.2.1 are Java EE 7 full platform certified, while earlier versions of each product offer Java EE 6 full platform certification. MICROSERVICES AND MODULAR APPLICATIONS Microservices architecture and the related concept of 12-factor applications are modular architectures that offer an alternative to centralized, monolithic applications. A microservices approach for software solutions differs from other architectural approaches by treating each service as a discrete, independent component of the architecture. Each microservice serves a single, clear purpose and is accessed using well-defined parameters. Microservices can be implemented using a variety of languages and technologies, including Java EE. Java developers can develop and then deploy microservices-style applications to run on JBoss EAP. JBoss EAP can scale to accommodate dynamic service loads and run deployed microservices independently or within a container application platform, such as Red Hat OpenShift Container Platform. Packaging for microservices is a separate issue from design and implementation. While web application archive (WAR) and enterprise application archive (EAR) files are commonly used for monolithic applications, they can also be used to package microservices. A critical consideration for microservices is the process of defining the deployment topology. JBoss EAP supports multiple options for this process under two broad approaches: •Deploy a single microservice to a single instance of JBoss EAP, inside a single container. When deployed this way, multiple threads provide vertical scalability. In addition, multiple JBoss EAP containers can be fronted by a load balancer, adding horizontal scalability and high availability. •Run microservices deployed separately on horizontally scaled and load-balanced JBoss EAP instances. For any deployment options, developers can take advantage of the modularity of JBoss EAP to minimize their server resource footprint. As with JBoss EAP, developers using Oracle WebLogic Server have a choice of microservice deployment options that offer vertical and horizontal scaling, as well as failover advantages. However, a lack of modularity for tuning its server resource footprint can limit the potential density of WebLogic instances on any given computing resource. Resources such as memory and CPU are typically limited, but the more microservices that are deployed on Oracle WebLogic instances, the more resources are needed. As a result, the resource requirements for Oracle WebLogic simply grow faster than the same type of deployment on JBoss EAP, especially when considering the modular and classloader capabilities of JBoss EAP. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 5 DEVELOPER CAPABILITIES Java EE developers need flexibility for developing any type of Java application, including support for: •Using monolithic, microservices-based, or hybrid applications — in both on-premise and cloud environments. •Quickly creating, running, and debugging code with an effective integrated development environment (IDE). •Integration with source code control systems and possibly continuous integration/continuous delivery (CI/CD) tools for team development. •Interaction between the IDE and a cloud environment, such as Red Hat OpenShift, without losing access to other developer capabilities. Red Hat JBoss Developer Studio offers tools for local and cloud development, including tools that are built specifically for Red Hat OpenShift. These tools let users create, import, and modify OpenShift applications and then set up manual or automatic builds of source code changes. JBoss Developer Studio integrates with the entire Red Hat JBoss Middleware portfolio. A Red Hat JBoss EAP subscription includes development subscriptions for all Red Hat JBoss Middleware products, and for every 16 cores of a Red Hat JBoss Middleware subscription, 25 developers gain development rights for all Red Hat JBoss Middleware platforms. Oracle offers three IDE tools for development: •NetBeans for Java, HTML, PHP, and C/C++ development. •Oracle Enterprise Platform for Eclipse for creating a custom Eclipse environment. •JDeveloper for development across the entire Oracle middleware portfolio, including Oracle WebLogic Server. The primary and most strategic offering, JDeveloper includes many Java and Java EE development features, as well as a development-only WebLogic Server instance. All three IDE tool options let developers deploy applications to Java Cloud Service instances and directly inspect service instance logs. Development for Oracle SOA Suite and Oracle BPM Suite can be performed using JDeveloper, but not using NetBeans or Oracle Enterprise Platform for Eclipse. In addition, developers can use Oracle SOA Suite and Oracle BPM Suite for free to develop a first release for an application. However, when those applications are launched into production, a license must be secured for those products. JAVA APPLICATIONS AND CLOUD TECHNOLOGY Cloud-based deployments are increasingly used for production environments due to the ease and relatively low cost of deploying new instances. Cloud computing is becoming more important for development workloads, especially when used with other emerging technologies, such as containers. Monolithic application designs let developers create, build, and run all of the necessary code locally. However, as the adoption of services-based architecture styles grows, the number of services — including microservices — that an individual developer might interact with also grows. As a result, installing and running all required services on a single instance becomes even more challenging. Virtual machines can mitigate this problem by providing prebuilt images for developers to load and run. However, this approach is resource-intensive for memory, CPU, and other resources that are used by redundant operating system and hardware definitions. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 6 Containers have emerged as an alternative way to run prepackaged software deployments that requires much less resource overhead than virtual machines and are one of the key cloud computing technologies used extensively at Red Hat. Developers can easily run individual or small collections of containers on a laptop. However, when many containers are needed, orchestration can quickly become complex. Instead, developers can share access to containers within orchestrated cloud deployments for consistency and simplicity. While the type of underlying cloud technology may not be of concern to Java application developers — as how the cloud works is not strictly relevant — a solid foundation for building applications is important. CONTAINERS AND ORCHESTRATION Linux® containers unify applications and their runtime components by combining lightweight application isolation with an image-based deployment method. Containers introduce autonomy for applications by packaging them with their libraries and other dependencies. Containers do not contain an independent operating system kernel, making them faster and more agile than virtual machines, but as a result, all containers on a host must use the same kernel. The core of Red Hat cloud technology is composed of Linux container technology and a base layer running Red Hat Enterprise Linux. Each container preferably runs on an OpenShift environment to gain the underlying Red Hat Enterprise Linux operating system and docker-formatted containers. OpenShift provides high-level capabilities for managing multiple containers, including clustering, orchestration and provisioning, monitoring, and logging. In addition to this container strategy, the core technology used by Red Hat for cloud computing also accounts for running containers at scale — potentially over multiple hosts. To solve this issue, Red Hat uses Google Kubernetes. This open source project is based on Google’s experience running its own applications at scale. With the launch of Kubernetes for container orchestration and management, Red Hat saw an opportunity to collaborate and help standardization efforts in support of container adoption. Red Hat developers are among the leading contributors for both the Kubernetes and docker projects. According to Stackalytics, Red Hat is the second-largest company contributor to the Kubernetes project, behind only Google itself. 5 Kubernetes packages, instantiates, and runs containers using a declarative model that lets users define the desired end state to maintain. To ensure this state, Kubernetes uses automated, selfhealing mechanisms for containers, such as automatic restarts, rescheduling on different hosts, or replication for use cases such as auto-scaling. In addition, Kubernetes works with docker-formatted images without modification. Oracle has taken a different approach to cloud computing. Instead of containers, Oracle has embraced virtual machines and uses a mix of proprietary hardware and software for its public and private cloud offerings. •Oracle Exalogic Elastic Cloud is positioned as “hardware and software engineered together” for private clouds.6 However, only two Oracle products to build a private cloud are available: Oracle Traffic Director and Oracle WebLogic Server Multitenant. 5 “Stackalytics | Kubernetes Community Contribution.” Stackalytics, 2015. stackalytics. com/?release=all&project_type=kubernetes-group&metric=commits. 6 “Oracle Exalogic Elastic Cloud.” Oracle. oracle.com/engineered-systems/exalogic/index.html. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 7 •Oracle Traffic Director supports interactions between applications by providing communications, load balancing, rule-based request routing, throttling, Secure Sockets Layer (SSL), and other features. •Oracle WebLogic Server Multitenant lets users add more Java EE applications to each WebLogic server instance. Oracle claims this capability lets users accomplish more work using fewer resources and by consolidating servers.7 However, Oracle core cloud technology does not address management of cloud resources and applications. Instead, Oracle offers administration of Oracle Traffic Director to route and manage traffic to Java applications running on WebLogic Server instances. To achieve maximum server density, users must add and configure WebLogic Server Multitenant, adding administrative complexity. Both Oracle Traffic Director and Oracle WebLogic Server Multitenant lack support for docker-formatted containers and orchestration using Kubernetes, and Oracle Traffic Director lacks support for Red Hat Enterprise Linux. Oracle does support use of WebLogic Server within docker containers to let WebLogic users create private clouds based on docker and a choice of orchestration technology, including Kubernetes. However, these custom clouds would not match the technologies Oracle has publicly disclosed it uses for its private and public cloud offerings, and there is no indication that Oracle uses docker or Kubernetes for any of its cloud offerings. Oracle provides multiple examples of using docker with WebLogic, such as how to run a WebLogic cluster in a docker Swarm cluster linked with overlay networking.8 This detailed example presents all the manual steps required to build a clustered WebLogic environment and highlights several points of concern: •Oracle explicitly supports use of docker images but not the associated docker technology used.9 •Use of docker and associated technology is not part of the official documentation for Oracle WebLogic Server. •Private clouds from Oracle do not use docker containers or any of the other docker technology used in the example.10 •The lengthy manual process illustrates the complexity of managing cloud orchestration along with application development. In contrast, developers using Red Hat JBoss EAP running on OpenShift use docker-formatted images and Kubernetes — without needing to learn the complex individual or collective operation of these technologies. 7 “Resource Consumption Management in WebLogic Server MultiTenant 12.2.1 to Control Resource Usage of Domain Partitions.” The WebLogic Server Blog. Oracle. blogs.oracle.com/WebLogicServer/entry/ using_resource_consumption_management_in 8 “Workshop Guide: Docker Multi Host.” Github. Oracle. github.com/oracle/docker-images/tree/master/ OracleWebLogic/workshops/multihost. 9 Riccelli, Monica. “New WebLogic Server Running on Docker in Multi-Host Environments.” The WebLogic Server Blog. Oracle. blogs.oracle.com/WebLogicServer/entry/new. 1 0 Conclusion drawn from Red Hat review of Oracle documentation. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 8 AUTOMATION AND DEPLOYMENT TECHNOLOGY DevOps aims to provide a continuous, collaborative application delivery cycle that includes equal participation from development and IT operations teams. The challenge is negotiating potential motivational mismatch between developers and IT operations. Development is feature-led, while IT operations is stability-led. To complement a DevOps strategy, application platforms must provide an effective build environment for developers, as well as an effective runtime environment for IT operations. BUILD ENVIRONMENT Red Hat offers core cloud technology that supports cloud deployments beyond Java applications, such as in-memory data grids, business process management (BPM), business rules management (BRMS), and data virtualization. Automating and delivering builds — commonly called CI/CD — is a key ability for developers. They can choose from multiple tools to build and run code on JBoss EAP in an OpenShift cloud, including: Oracle offers proprietary technology that is built for specific purposes and sometimes specific technology. Developers can use JBoss Developer Studio to create a new OpenShift application project from a template, which simplifies object creation for running the application in OpenShift. As a developer creates the application and checks code into a Git repository, that repository can use a webhook to publish a change notice. This webhook notifies OpenShift to pull the latest source code and execute a build script for the necessary objects, including the docker-formatted image and deployment, image stream, route, and service objects. •A standard docker file. •OpenShift source-to-image (S2I) capabilities. •A custom chain of build tools. OpenShift S2I is popular with developers, as it takes application source code as an input to produce a new image representing the assembled application as output. Templates can be used to define a group of an application’s components — such as front-end, backend, cache, or database — or to instantiate an entire application on demand as an example for test environments. Most developers will not need to know the details of these templates, but a smaller group of advanced developers and architects will design and adjust them to meet deployment standards. Oracle cloud offerings do not include S2I tools like those included in Red Hat OpenShift. Instead, Java applications are built on a developer’s computer or centralized server, then deployed to WebLogic Server. As a result, DevOps tools and integration with source code control systems are the responsibility of the development team. Once applications are built, they can be deployed using an IDE, manual transfer of files, or the administrative console provide by Oracle WebLogic Server or Oracle Cloud Server. RUNTIME ENVIRONMENT Once an application is built, it is ready to be deployed, accessed, and updated. Together, JBoss EAP and OpenShift provide developer benefits beyond offering a software build, including: •Automatic scalability of applications. •Load balancing of scaled applications. •Versioning of deployed applications, including replacing a running version with a newer version. •Rolling back an application to a previous version. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 9 •Internal testing of an application and exposing ports for external testing. In an environment running JBoss EAP on OpenShift, an application that is built using the S2I process typically includes many of the objects needed to run it. Some are most useful for developers, while others offer greater value for IT operations (Table 1). TABLE 1. DEFAULT SOURCE-TO-IMAGE (S2I) OBJECTS OBJECT DESCRIPTION/PURPOSE USE Build A special container that runs once in OpenShift to build applications. Possible build types include a standard dockerfile, OpenShift S2I, or a custom chain of build tools. Developer Deployment • Defines a specified number of container images to run. Developer •Automates deployments in response to events. •Transitions from previous to new deployment through customizable strategies, such as rolling deployment. • Rolls back to a previous deployment. •Offers manual replication scaling. Image stream Automatically performs an action, such as updating a deployment, when a new image is created, such as a new version of that deployment’s base image. IT operations Route Offers access to the OpenShift cloud using an externally reachable hostname. IT operations Service Offers service discovery and load-balanced access to deployed services — for example, microservices deployed and accessed using representational state transfer (REST). IT operations Configuration of the Oracle cloud runtime is initially performed using a web process that includes selecting the WebLogic edition, billing frequency, and other service details, such as memory per instance, cluster size, and load balancing. Oracle provides defaults for all values to simplify building and running a default configuration. However, more tailored environments require more manual configuration during setup, including choosing CPU and memory shapes to allocate to the WebLogic virtual machines and configuring load balancing, backup, and recovery. JBoss EAP running on OpenShift can also be set up using default or manually set values. However, OpenShift lets administrators repeatedly deploy customized cloud configurations — a capability that Oracle Java Cloud Service lacks. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 10 PRICE AND COST COMPARISONS RED HAT JBOSS EAP PRICE ADVANTAGES • 509% three-year ROI •95% or US$232,000 lower initial cost than Oracle •73% or US$32,000 less for premium support than Oracle • Consistent support costs, compared to increases of 22% the first year and higher increases each following year for Oracle support The total cost of acquisition for an application platform does not reflect all costs associated with maintaining that platform, but it offers an effective starting point for comparison. Subscription-based pricing for Red Hat JBoss Middleware offers a simple, easy-to-understand alternative to the license fees and ongoing support costs of other vendors. According to an IDC report commissioned by Red Hat, several JBoss EAP customers achieved an average three-year return on investment (ROI) of 509% and broke even on their investment in an average of 9.4 months.11 These financial benefits are attributed to: •Substantial savings compared to commercial application development platforms. •Increased productivity from greater time savings and efficiency for application development teams. •Faster response to business opportunities through rapid application deployment and improved application performance. •More reliable applications to reduce the effect of downtime. PRICING MODELS BY ENVIRONMENT Each customer must consider application deployment requirements for all environments — from testing to production — to determine the appropriate quantity of application platform entitlements needed. Red Hat JBoss EAP subscribers must determine the number of cores that will be needed to run applications. Red Hat subscriptions are available in 16- and 64-core increments for use in physical, virtual, and cloud environments, and JBoss EAP entitlements can be moved freely between any supported environments. Oracle’s pricing strategy for on-premise use of WebLogic Server, by comparison, is much more complex and based on multiple dimensions. The first considers how many total processors WebLogic Server will operate on. However, the definition of processor used by Oracle for licensing purposes does not mean CPU. Part of the definition of processor included in the US Oracle Technology Commercial Price List states that “the number of required licenses shall be determined by multiplying the total number of cores of the processor by a core processor licensing factor specified on the Oracle Processor Core Factor Table.” 12 Core factor weighs the final processor count based on CPU type, using the theory that different CPU types perform better or worse than others. For example, Intel chips have a 0.5 core factor, while IBM Power and System Z chips have a core factor of 1, and SPARC T3 has a core factor of 0.25. As a result, determining the total number of WebLogic Server licenses needed requires a total count of cores by CPU type. 11 “The Business Value of Red Hat JBoss Enterprise Application Platform.” IDC, 2015. redhat.com/en/resources/ idc-whitepaper-value-jboss-eap. 12 “Oracle Technology Global Price List.” Oracle Pricing and Licensing: Price Lists. Oracle. 10 November 2016. oracle.com/ us/corporate/pricing/price-lists/index.html. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 11 The second pricing dimension to consider is virtualization. Oracle differentiates between hard and soft partitions for sub-capacity licensing, counting only the cores in use by virtualization environments. Soft partitioning software — such as Oracle VM, VMware, and Kernel-based Virtual Machine (KVM) — does not provide sub-capacity advantages. Instead, the entire set of CPUs — no matter how few are actually running the workload — must be licensed. However, hardware-based or hard partitions, such as capped Solaris Zones — also known as Solaris Containers — and IBM logical partitions (LPARs), can take advantage of sub-capacity licensing. There are also additional factors to consider related to virtualization policies for Oracle Fusion Middleware: •Oracle Linux is the only Linux distribution Oracle supports partitioning on. •Only Linux and docker containers are supported in Oracle Linux. •Only Microsoft Hyper-V is supported for virtualization on Microsoft Windows. •Supported virtualization platforms require WebLogic Server licensing for all cores in a server.13 The final pricing dimension to consider is multitenancy, a new add-on feature that lets users add more applications into each server instance. This feature increases the cost of WebLogic Server 12.2.1 by 80%. Using a consolidation factor of three times on a new license purchase can reduce Oracle licensing and support fees. A three times consolidation on a new license purchase can mean a 38% reduction in Oracle licensing and support fees, but for current Weblogic customers, cost savings require expanding the number of applications deployed rather than focusing on the number of cores.14 This inverse calculation compared to new customers is determined by a lack of public evidence from Oracle that existing WebLogic customers can use multitenancy to reduce the number of WebLogic cores requiring paid support. As a result, current WebLogic users will continue to pay the same support costs for their existing WebLogic cores and must justify using multitenancy by finding more applications to run using existing licenses. Customers who cannot expand existing application footprints by roughly 70% will find simply buying more WebLogic cores more cost-effective. SUBSCRIPTION AND LICENSING Different Java EE versions are available under the Oracle LifeTime Support Policy to run existing Java EE deployments.15 However, support costs may affect the feasibility of continuing to work with a given version. 13 “Supported Virtualization Technologies with Oracle Fusion Middleware.” Oracle. oracle.com/technetwork/middleware/ ias/oracleas-supported-virtualization-089265.html. 14 “Babcock, Charles. “Oracle Adds Multi-Tenancy To WebLogic Application Server.” InformationWeek. 30 Oct. 2015. informationweek.com/cloud/platform-as-a-service/ oracle-adds-multi-tenancy-to-weblogic-application-server/d/d-id/1322904. 15 “Oracle Lifetime Support Policy for Oracle Fusion Middleware Guide.” Oracle. oracle.com/us/support/lifetimesupport/index.html. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 12 Oracle support comes in three progressive options: Premier Support, Extended Support, and Sustaining Support. Support costs increase as products age through these stages. Oracle provides Premier Support for products five years from general availability (GA), with costs starting at 22% of the year-one license and increasing thereafter. Extended support is available 6-8 years after GA and is priced using an escalating schedule: •Year six costs increase 10% over year 5 costs. •Year seven costs increase 20% over year 6 costs. •Year eight costs increase 20% over year 7 costs. After year eight, the Oracle product release is covered under the Sustaining Support option and, per Oracle policy, the cost continually increases each year. As a result, the cost of ongoing maintenance for applications deployed on Oracle WebLogic is compelling evidence for finding an alternative application platform. COST CALCULATIONS The price comparisons in this review use Oracle public pricing for the products specified and assumes Intel-based dual-socket servers rated at 0.5 per core and 16 cores for the physical hardware profile.16 First-year Oracle license costs for each product are calculated by multiplying 16 (cores) X 0.5 (core factor) X [product price]. Each ongoing year of Oracle software update license and support fees is calculated at 22% of license cost. Using this formula and the example hardware specifications results in the following price comparisons: •At a cost of US$12,000 for 16 cores with premium support, an annual Red Hat JBoss EAP subscription costs 95% or US$232,000 less than Oracle WebLogic Server Enterprise Edition. •Comparing just ongoing support costs, an annual subscription to Red Hat JBoss EAP for 16 cores with premium support costs 73% or US$32,000 less than Oracle WebLogic Server Enterprise Edition. The WebLogic Server Multitenant feature requires an additional US$20,000 per Oracle processor licensed for WebLogic Server in addition to 20% annual support costs. As a result, current WebLogic customers would need to expand their existing application footprints by roughly 70% to offset these costs. Only comparing annual recurring costs — eliminating licensing costs — and using the same hardware profile previously mentioned, an annual Red Hat JBoss EAP subscription can still cost significantly less than annual Oracle support charges. 16 “US Oracle Technology Commercial Price List.” Oracle Pricing and Licensing: Price Lists. Oracle. 28 April 2016. oracle. com/us/corporate/pricing/price-lists/index.html. redhat.com COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic 13 COMPETITIVE REVIEW Red Hat JBoss Enterprise Application Platform 7 compared to Oracle WebLogic CONCLUSION Red Hat JBoss EAP provides a flexible Java EE application platform equally at home running onpremise or cloud environments. It can be used as a platform to maintain existing Java EE code or create new applications, using both traditional and emerging design methods, such as microservices. For cloud deployment, Red Hat recommends using JBoss EAP with Red Hat OpenShift Container Platform, a robust PaaS that takes advantage of modern technology and methods such as Linux containers, Kubernetes, and CI/CD. Other products in the Red Hat JBoss Middleware portfolio, including Red Hat JBoss Fuse, Red Hat JBoss BRMS, and Red Hat JBoss Data Grid, are available for use on OpenShift. Additionally, Red Hat subscriptions can be moved between on-premise and cloud environments at no additional cost. All Red Hat JBoss Middleware subscriptions include unlimited incident support, version updates, bug fixes, and access to the Red Hat Customer Portal for the full subscription term. Red Hat JBoss EAP is available in 16- and 64-core entitlements at a price that can potentially provide rapid return on investment. Subscribers can use the potential savings from choosing JBoss EAP and other Red Hat JBoss Middleware products to fund more projects and innovation. ABOUT RED HAT Red Hat is the world’s leading provider of open source software solutions, using a communitypowered approach to provide reliable and high-performing cloud, Linux, middleware, storage, and virtualization technologies. Red Hat also offers award-winning support, training, and consulting services. As a connective hub in a global network of enterprises, partners, and open source communities, Red Hat helps create relevant, innovative technologies that liberate resources for growth and prepare customers for the future of IT. facebook.com/redhatinc @redhatnews linkedin.com/company/red-hat redhat.com #0000000_1216 NORTH AMERICA 1 888 REDHAT1 EUROPE, MIDDLE EAST, AND AFRICA 00800 7334 2835 [email protected] ASIA PACIFIC +65 6490 4200 [email protected] LATIN AMERICA +54 11 4329 7300 [email protected] Copyright © 2016 Red Hat, Inc. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, and JBoss are trademarks of Red Hat, Inc., registered in the U.S. and other countries. Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.