Alternatives to Undertow logo

Alternatives to Undertow

Wildfly, Apache Tomcat, Jetty, Grizzly, and Netty are the most popular alternatives and competitors to Undertow.
51
5

What is Undertow and what are its top alternatives?

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.
Undertow is a tool in the Web Servers category of a tech stack.

Top Alternatives to Undertow

  • Wildfly
    Wildfly

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

  • Apache Tomcat
    Apache Tomcat

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

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

  • Grizzly
    Grizzly

    Writing scalable server applications in the Java™ programming language has always been difficult. Before its advent, thread management issues made it impossible for a server to scale to thousands of users. This framework has been designed to help developers to take advantage of the Java™ NIO API. ...

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

  • Spring Boot
    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. ...

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

  • Apache HTTP Server
    Apache HTTP Server

    The Apache HTTP Server is a powerful and flexible HTTP/1.1 compliant web server. Originally designed as a replacement for the NCSA HTTP Server, it has grown to be the most popular web server on the Internet. ...

Undertow alternatives & related posts

Wildfly logo

Wildfly

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

    related Wildfly 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
    Jetty logo

    Jetty

    472
    310
    47
    An open-source project providing an HTTP server, HTTP client, and javax.servlet container
    472
    310
    + 1
    47
    PROS OF JETTY
    • 15
      Lightweight
    • 10
      Embeddable
    • 10
      Very fast
    • 6
      Very thin
    • 6
      Scalable
    CONS OF JETTY
    • 0
      Student

    related Jetty posts

    Grizzly logo

    Grizzly

    8
    17
    0
    A framework for building scalable server applications
    8
    17
    + 1
    0
    PROS OF GRIZZLY
      Be the first to leave a pro
      CONS OF GRIZZLY
        Be the first to leave a con

        related Grizzly posts

        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
        Spring Boot logo

        Spring Boot

        25.9K
        23.6K
        1K
        Create Spring-powered, production-grade applications and services with absolute minimum fuss
        25.9K
        23.6K
        + 1
        1K
        PROS OF SPRING BOOT
        • 149
          Powerful and handy
        • 134
          Easy setup
        • 128
          Java
        • 90
          Spring
        • 85
          Fast
        • 46
          Extensible
        • 37
          Lots of "off the shelf" functionalities
        • 32
          Cloud Solid
        • 26
          Caches well
        • 24
          Productive
        • 24
          Many receipes around for obscure features
        • 23
          Modular
        • 23
          Integrations with most other Java frameworks
        • 22
          Spring ecosystem is great
        • 21
          Auto-configuration
        • 21
          Fast Performance With Microservices
        • 18
          Community
        • 17
          Easy setup, Community Support, Solid for ERP apps
        • 15
          One-stop shop
        • 14
          Easy to parallelize
        • 14
          Cross-platform
        • 13
          Easy setup, good for build erp systems, well documented
        • 13
          Powerful 3rd party libraries and frameworks
        • 12
          Easy setup, Git Integration
        • 5
          It's so easier to start a project on spring
        • 4
          Kotlin
        • 1
          Microservice and Reactive Programming
        • 1
          The ability to integrate with the open source ecosystem
        CONS OF SPRING BOOT
        • 23
          Heavy weight
        • 18
          Annotation ceremony
        • 13
          Java
        • 11
          Many config files needed
        • 5
          Reactive
        • 4
          Excellent tools for cloud hosting, since 5.x
        • 1
          Java 😒😒

        related Spring Boot posts

        Praveen Mooli
        Engineering Manager at Taylor and Francis · | 19 upvotes · 4M views

        We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

        To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas

        To build #Webapps we decided to use Angular 2 with RxJS

        #Devops - GitHub , Travis CI , Terraform , Docker , Serverless

        See more

        Is learning Spring and Spring Boot for web apps back-end development is still relevant in 2021? Feel free to share your views with comparison to Django/Node.js/ ExpressJS or other frameworks.

        Please share some good beginner resources to start learning about spring/spring boot framework to build the web apps.

        See more
        NGINX logo

        NGINX

        113.3K
        60.9K
        5.5K
        A high performance free open source web server powering busiest sites on the Internet.
        113.3K
        60.9K
        + 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 · 11.1M 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 · 288.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
        Apache HTTP Server logo

        Apache HTTP Server

        64.4K
        22.5K
        1.4K
        Open-source HTTP server for modern operating systems including UNIX and Windows
        64.4K
        22.5K
        + 1
        1.4K
        PROS OF APACHE HTTP SERVER
        • 479
          Web server
        • 305
          Most widely-used web server
        • 217
          Virtual hosting
        • 148
          Fast
        • 138
          Ssl support
        • 44
          Since 1996
        • 28
          Asynchronous
        • 5
          Robust
        • 4
          Proven over many years
        • 2
          Mature
        • 2
          Perfomance
        • 1
          Perfect Support
        • 0
          Many available modules
        • 0
          Many available modules
        CONS OF APACHE HTTP SERVER
        • 4
          Hard to set up

        related Apache HTTP Server posts

        Nick Rockwell
        SVP, Engineering at Fastly · | 46 upvotes · 4.1M views

        When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

        So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

        React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

        Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

        See more
        Tim Abbott
        Shared insights
        on
        NGINXNGINXApache HTTP ServerApache HTTP Server
        at

        We've been happy with nginx as part of our stack. As an open source web application that folks install on-premise, the configuration system for the webserver is pretty important to us. I have a few complaints (e.g. the configuration syntax for conditionals is a pain), but overall we've found it pretty easy to build a configurable set of options (see link) for how to run Zulip on nginx, both directly and with a remote reverse proxy in front of it, with a minimum of code duplication.

        Certainly I've been a lot happier with it than I was working with Apache HTTP Server in past projects.

        See more