Need advice about which tool to choose?Ask the StackShare community!

Payara

43
72
+ 1
0
Apache Tomcat

16.3K
12.2K
+ 1
201
Add tool

Apache Tomcat vs Payara: What are the differences?

Introduction

Apache Tomcat and Payara are both popular server containers for running Java applications. While they share some similarities, there are key differences between the two that distinguish them in terms of features and functionalities.

  1. Deployment: Apache Tomcat is a lightweight server container primarily designed for running Java servlets and JSPs. It focuses on providing a basic servlet container and requires additional configuration for advanced Java EE features. On the other hand, Payara is a full-featured application server built on top of GlassFish, offering a wide range of Java EE capabilities out-of-the-box, making it suitable for enterprise-level applications.

  2. Support and Maintenance: Apache Tomcat is an open-source project with a large community of contributors, providing continuous updates, bug fixes, and security patches. However, the level of support and maintenance may vary depending on the resources available within the community. Payara, on the other hand, is a commercially supported product with dedicated technical support, regular updates, and long-term support options, ensuring a higher level of reliability and stability.

  3. Administration and Monitoring: Apache Tomcat provides basic administration and monitoring capabilities through its web-based management interface. While it allows managing server resources and web applications, it may require additional setup for more advanced management tasks. Payara, on the other hand, offers an extensive administration and monitoring console with a user-friendly interface, providing advanced features such as cluster management, application profiling, and monitoring.

  4. Clustering and High Availability: In Apache Tomcat, setting up clustering and achieving high availability requires additional manual configuration, including load balancing and session replication. Payara, being a full-fledged application server, offers built-in clustering capabilities with easy configuration, automatic load balancing, and session failover, making it more suitable for scalable and highly available deployments.

  5. Microservices Support: Payara supports microservices architecture out-of-the-box by incorporating Eclipse MicroProfile, a set of specifications for building cloud-native applications. It provides features such as service discovery, fault tolerance, and health checks, enabling developers to quickly build and deploy microservices-based applications. Apache Tomcat, being a more lightweight servlet container, lacks built-in support for microservices and requires additional libraries and frameworks to implement similar functionality.

  6. Extensibility and Integration: Payara offers seamless integration with various frameworks, tools, and technologies from the Java EE ecosystem. It supports popular frameworks like Hibernate, CDI, and JPA, making it easier to develop and deploy enterprise applications. While Apache Tomcat can also be extended with various libraries and frameworks, it may require additional configuration and setup to integrate them seamlessly.

In summary, Apache Tomcat is a lightweight servlet container ideal for simple Java web applications, while Payara is a full-featured application server designed for complex enterprise applications, offering advanced features, commercial support, and microservices support out-of-the-box.

Decisions about Payara and Apache Tomcat

I was in a situation where I have to configure 40 RHEL servers 20 each for Apache HTTP Server and Tomcat server. My task was to 1. configure LVM with required logical volumes, format and mount for HTTP and Tomcat servers accordingly. 2. Install apache and tomcat. 3. Generate and apply selfsigned certs to http server. 4. Modify default ports on Tomcat to different ports. 5. Create users on RHEL for application support team. 6. other administrative tasks like, start, stop and restart HTTP and Tomcat services.

I have utilized the power of ansible for all these tasks, which made it easy and manageable.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Payara
Pros of Apache Tomcat
    Be the first to leave a pro
    • 79
      Easy
    • 72
      Java
    • 49
      Popular
    • 1
      Spring web

    Sign up to add or upvote prosMake informed product decisions

    Cons of Payara
    Cons of Apache Tomcat
      Be the first to leave a con
      • 2
        Blocking - each http request block a thread
      • 1
        Easy to set up

      Sign up to add or upvote consMake informed product decisions

      What is Payara?

      It Server is a drop in replacement for GlassFish Server Open Source Edition with quarterly releases containing enhancements, bug fixes and patches.

      What is Apache Tomcat?

      Apache Tomcat powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations.

      Need advice about which tool to choose?Ask the StackShare community!

      Jobs that mention Payara and Apache Tomcat as a desired skillset
      What companies use Payara?
      What companies use Apache Tomcat?
      See which teams inside your own company are using Payara or Apache Tomcat.
      Sign up for StackShare EnterpriseLearn More

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Payara?
      What tools integrate with Apache Tomcat?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      Blog Posts

      What are some alternatives to Payara and Apache Tomcat?
      GlassFish
      An Application Server means, It can manage Java EE applications You should use GlassFish for Java EE enterprise applications. The need for a seperate Web server is mostly needed in a production environment.
      Wildfly
      It is a flexible, lightweight, managed application runtime that helps you build amazing applications. It supports the latest standards for web development.
      Jetty
      Jetty is used in a wide variety of projects and products, both in development and production. Jetty can be easily embedded in devices, tools, frameworks, application servers, and clusters. See the Jetty Powered page for more uses of Jetty.
      JBoss
      An application platform for hosting your apps that provides an innovative modular, cloud-ready architecture, powerful management and automation, and world class developer productivity.
      Spring Boot
      Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.
      See all alternatives