Alternatives to Jetty logo

Alternatives to Jetty

Apache Tomcat, Netty, Wildfly, JBoss, and GlassFish are the most popular alternatives and competitors to Jetty.
472
310
+ 1
47

What is Jetty and what are its top alternatives?

Jetty is a lightweight and highly scalable Java-based web server and servlet container. Key features of Jetty include support for the latest Java versions, WebSocket and HTTP/2 support, modular architecture, and low latency handling of dynamic content. However, some limitations of Jetty include complexity in configuration and setup for beginners and lack of extensive documentation compared to other web server options.

  1. Apache Tomcat: Apache Tomcat is a widely used open-source web server and servlet container. Key features include easy integration with other Apache projects, extensive documentation, support for Java EE technologies, and a large active community. However, some may find Apache Tomcat to be less lightweight compared to Jetty.

  2. Undertow: Undertow is a lightweight and high-performance web server designed for both blocking and non-blocking operations. Key features include flexible configuration options, WebSocket support, and seamless integration with JBoss AS. However, Undertow may have a steeper learning curve for beginners compared to Jetty.

  3. NGINX: NGINX is a popular web server known for its high performance, scalability, and low resource consumption. Key features include reverse proxy capabilities, load balancing, and TLS/SSL termination. However, NGINX may require additional modules for certain functionality that Jetty offers out of the box.

  4. WildFly: WildFly, formerly known as JBoss, is a robust and feature-rich Java application server. Key features include support for Java EE technologies, clustering capabilities, and a management console for easy administration. However, WildFly may be overkill for simpler web server needs compared to Jetty.

  5. Resin: Resin is a fast and reliable Java-based application server and web container. Key features include clustering support, dynamic class reloading, and high-speed performance. However, Resin may have a smaller community and less extensive documentation compared to Jetty.

  6. Caddy: Caddy is a modern web server with automatic HTTPS setup, HTTP/2 support, and easy configuration using Caddyfile. Key features include Let's Encrypt integration, reverse proxy capabilities, and on-the-fly TLS certificate generation. However, some advanced users may find Caddy's configuration options limiting compared to Jetty.

  7. GlassFish: GlassFish is a robust and full-featured Java EE application server. Key features include support for the latest Java EE specifications, clustering capabilities, and a modular architecture. However, GlassFish may have higher resource requirements compared to Jetty for smaller-scale deployments.

  8. Tomee: Apache TomEE is a lightweight and enterprise-ready Java EE application server built on top of Apache Tomcat. Key features include support for Java EE technologies, simplified configuration, and a small memory footprint. However, some users may find Apache TomEE to be less feature-rich compared to Jetty.

  9. Grizzly: Grizzly is a lightweight framework for building scalable and performant web applications in Java. Key features include support for WebSocket, HTTP/2, and an event-driven architecture for high concurrency. However, Grizzly may require more manual configuration compared to the out-of-the-box functionality of Jetty.

  10. Play Framework: Play Framework is a modern web framework for building reactive applications in Java and Scala. Key features include hot reloading, built-in testing support, and asynchronous request handling. However, Play Framework may have a different programming model compared to traditional web servers like Jetty.

Top Alternatives to Jetty

  • Apache Tomcat
    Apache Tomcat

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

  • Netty
    Netty

    Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server. ...

  • Wildfly
    Wildfly

    It is a flexible, lightweight, managed application runtime that helps you build amazing applications. It supports the latest standards for web development. ...

  • JBoss
    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. ...

  • GlassFish
    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. ...

  • Jersey
    Jersey

    It is open source, production quality, framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation. It provides it’s own API that extend the JAX-RS toolkit with additional features and utilities to further simplify RESTful service and client development. ...

  • Undertow
    Undertow

    It is a flexible performant web server written in java, providing both blocking and non-blocking API’s based on NIO. It has a composition based architecture that allows you to build a web server by combining small single purpose handlers. The gives you the flexibility to choose between a full Java EE servlet 4.0 container, or a low level non-blocking handler, to anything in between. ...

  • NGINX
    NGINX

    nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. According to Netcraft nginx served or proxied 30.46% of the top million busiest sites in Jan 2018. ...

Jetty alternatives & related posts

Apache Tomcat logo

Apache Tomcat

16.5K
12.4K
201
An open source software implementation of the Java Servlet and JavaServer Pages technologies
16.5K
12.4K
+ 1
201
PROS OF APACHE TOMCAT
  • 79
    Easy
  • 72
    Java
  • 49
    Popular
  • 1
    Spring web
CONS OF APACHE TOMCAT
  • 3
    Blocking - each http request block a thread
  • 2
    Easy to set up

related Apache Tomcat posts

Остап Комплікевич

I need some advice to choose an engine for generation web pages from the Spring Boot app. Which technology is the best solution today? 1) JSP + JSTL 2) Apache FreeMarker 3) Thymeleaf Or you can suggest even other perspective tools. I am using Spring Boot, Spring Web, Spring Data, Spring Security, PostgreSQL, Apache Tomcat in my project. I have already tried to generate pages using jsp, jstl, and it went well. However, I had huge problems via carrying already created static pages, to jsp format, because of syntax. Thanks.

See more

Java Spring JUnit

Apache HTTP Server Apache Tomcat

MySQL

See more
Netty logo

Netty

262
408
17
Asynchronous event-driven network application framework
262
408
+ 1
17
PROS OF NETTY
  • 9
    High Performance
  • 4
    Easy to use
  • 3
    Just like it
  • 1
    Easy to learn
CONS OF NETTY
  • 2
    Limited resources to learn from

related Netty posts

Joshua Dean Küpper
CEO at Scrayos UG (haftungsbeschränkt) · | 6 upvotes · 2.1M views

We use GraphQL for the communication between our Minecraft-Proxies/Load-Balancers and our global Minecraft-Orchestration-Service JCOverseer.

This connection proved to be especially challenging, as there were so many available options and very specific requirements and we tried our hardest to put as little complexity into this interface as possible.

Initially we considered designing our very own Netty based Packet-Protocol. While the performance of this approach probably would've been noteworthy, we would have had to write a lot of packets as the individual payloads would differ a lot and for the protocol specification a new project would've been needed, so we scrapped that idea.

Our second idea was to use a combination of Redis Key/Value store (in particular the ability to write whole, complex sets as the values of keys) for existing data, Redis Pub-Sub for the synchronization of new/changed/deleted data and a Vert.x based REST API for the mutation requests of the clients. While this would certainly have been possible, we decided against it, as redis offers no real other data types than strings and typing was important to us.

So we finally settled for GraphQL as it would allow us to define dynamic queries and mutations and additionally has subscriptions in store, so we would only need one component instead of three separate. The proxies register as subscribers to the server changes channel and fetch the current data set in advance. If they need to request changes, this is done through a mutation in GraphQL aswell.

The status of the invidiual servers is fetched through Docker healthchecks and a Docker client in the orchestration service, that subscribes to changed HEALTHINESS values in docker. If a service becomes unhealthy it is unregistered and synchronized through GraphQL. The healthcheck is comparable to a ping packet that expects a response in a given time frame.

See more
Wildfly logo

Wildfly

187
225
6
A Java EE8 Application Server
187
225
+ 1
6
PROS OF WILDFLY
  • 3
    Eclipse integration
  • 3
    Java
CONS OF WILDFLY
    Be the first to leave a con

    related Wildfly posts

    JBoss logo

    JBoss

    336
    253
    0
    An open source Java EE-based application server
    336
    253
    + 1
    0
    PROS OF JBOSS
      Be the first to leave a pro
      CONS OF JBOSS
        Be the first to leave a con

        related JBoss posts

        GlassFish logo

        GlassFish

        312
        111
        0
        The Open Source Java EE Reference Implementation
        312
        111
        + 1
        0
        PROS OF GLASSFISH
          Be the first to leave a pro
          CONS OF GLASSFISH
            Be the first to leave a con

            related GlassFish posts

            Jersey logo

            Jersey

            151
            125
            6
            A REST framework that provides a JAX-RS implementation
            151
            125
            + 1
            6
            PROS OF JERSEY
            • 4
              Lightweight
            • 1
              Fast Performance With Microservices
            • 1
              Java standard
            CONS OF JERSEY
              Be the first to leave a con

              related Jersey posts

              Undertow logo

              Undertow

              51
              94
              5
              A flexible performant web server written in java
              51
              94
              + 1
              5
              PROS OF UNDERTOW
              • 4
                Performance
              • 1
                Lower footprint
              CONS OF UNDERTOW
              • 1
                Smaller community
              • 1
                Less known

              related Undertow posts

              NGINX logo

              NGINX

              113.1K
              60.8K
              5.5K
              A high performance free open source web server powering busiest sites on the Internet.
              113.1K
              60.8K
              + 1
              5.5K
              PROS OF NGINX
              • 1.4K
                High-performance http server
              • 894
                Performance
              • 730
                Easy to configure
              • 607
                Open source
              • 530
                Load balancer
              • 289
                Free
              • 288
                Scalability
              • 226
                Web server
              • 175
                Simplicity
              • 136
                Easy setup
              • 30
                Content caching
              • 21
                Web Accelerator
              • 15
                Capability
              • 14
                Fast
              • 12
                High-latency
              • 12
                Predictability
              • 8
                Reverse Proxy
              • 7
                The best of them
              • 7
                Supports http/2
              • 5
                Great Community
              • 5
                Lots of Modules
              • 5
                Enterprise version
              • 4
                High perfomance proxy server
              • 3
                Embedded Lua scripting
              • 3
                Streaming media delivery
              • 3
                Streaming media
              • 3
                Reversy Proxy
              • 2
                Blash
              • 2
                GRPC-Web
              • 2
                Lightweight
              • 2
                Fast and easy to set up
              • 2
                Slim
              • 2
                saltstack
              • 1
                Virtual hosting
              • 1
                Narrow focus. Easy to configure. Fast
              • 1
                Along with Redis Cache its the Most superior
              • 1
                Ingress controller
              CONS OF NGINX
              • 10
                Advanced features require subscription

              related NGINX posts

              Simon Reymann
              Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 10.7M views

              Our whole DevOps stack consists of the following tools:

              • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
              • Respectively Git as revision control system
              • SourceTree as Git GUI
              • Visual Studio Code as IDE
              • CircleCI for continuous integration (automatize development process)
              • Prettier / TSLint / ESLint as code linter
              • SonarQube as quality gate
              • Docker as container management (incl. Docker Compose for multi-container application management)
              • VirtualBox for operating system simulation tests
              • Kubernetes as cluster management for docker containers
              • Heroku for deploying in test environments
              • nginx as web server (preferably used as facade server in production environment)
              • SSLMate (using OpenSSL) for certificate management
              • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
              • PostgreSQL as preferred database system
              • Redis as preferred in-memory database/store (great for caching)

              The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

              • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
              • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
              • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
              • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
              • Scalability: All-in-one framework for distributed systems.
              • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
              See more
              John-Daniel Trask
              Co-founder & CEO at Raygun · | 19 upvotes · 276.5K views

              We chose AWS because, at the time, it was really the only cloud provider to choose from.

              We tend to use their basic building blocks (EC2, ELB, Amazon S3, Amazon RDS) rather than vendor specific components like databases and queuing. We deliberately decided to do this to ensure we could provide multi-cloud support or potentially move to another cloud provider if the offering was better for our customers.

              We’ve utilized c3.large nodes for both the Node.js deployment and then for the .NET Core deployment. Both sit as backends behind an nginx instance and are managed using scaling groups in Amazon EC2 sitting behind a standard AWS Elastic Load Balancing (ELB).

              While we’re satisfied with AWS, we do review our decision each year and have looked at Azure and Google Cloud offerings.

              #CloudHosting #WebServers #CloudStorage #LoadBalancerReverseProxy

              See more