Undertow - High performance non-blocking Webserver

  •        1593

Undertow is a flexible performant web server written in java, providing both blocking and non-blocking API’s based on NIO. Undertow 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 3.1 container, or a low level non-blocking handler, to anything in between.

http://undertow.io/
https://github.com/undertow-io/undertow

Tags
Implementation
License
Platform

   




Related Projects

Lighttpd - Webserver optimized for speed

  •    C

Lighttpd powers several popular Web 2.0 sites like YouTube, wikipedia and meebo. Its high speed io-infrastructure allows them to scale several times better with the same hardware than with alternative web-servers. Its features include small memory footprint, FastCGI, Output-Compression, URL-Rewriting and lot more. Its event-driven architecture is optimized for a large number of parallel connections (keep-alive) which is important for high performance AJAX applications.

C1000K-Servers - :zap: High performance websocket servers implemented by Spray-can, Netty, undertow, jetty, Vert

  •    Scala

This project provides eight high performance websocket server implementation and can be used to test their benchmark.The test result shows Netty, Go, Node.js, Undertow, Vert.x can setup 1 million connections. Netty and Go is best.

suave - Suave is a simple web development F# library providing a lightweight web server and a set of combinators to manipulate route flow and task composition

  •    F#

Suave is a simple web development F# library providing a lightweight web server and a set of combinators to manipulate route flow and task composition. Suave is inspired in the simplicity of Happstack and born out of the necessity of embedding web server capabilities in my own applications. Suave supports Websocket, HTTPS, multiple TCP/IP bindings, Basic Access Authentication, Keep-Alive. Suave also takes advantage of F# asynchronous workflows to perform non-blocking IO. In fact, Suave is written in a completely non-blocking fashion throughout.

trio - Trio – Pythonic async I/O for humans and snake people 🐍

  •    Python

The Trio project's goal is to produce a production-quality, permissively licensed, async/await-native I/O library for Python. Like all async libraries, its main purpose is to help you write programs that do multiple things at the same time with parallelized I/O. A web spider that wants to fetch lots of pages in parallel, a web server that needs to juggle lots of downloads and websocket connections at the same time, a process supervisor monitoring multiple subprocesses... that sort of thing. Compared to other libraries, Trio attempts to distinguish itself with an obsessive focus on usability and correctness. Concurrency is complicated; we try to make it easy to get things right. Trio was built from the ground up to take advantage of the latest Python features, and draws inspiration from many sources, in particular Dave Beazley's Curio. The resulting design is radically simpler than older competitors like asyncio and Twisted, yet just as capable. Trio is the Python I/O library I always wanted; I find it makes building I/O-oriented programs easier, less error-prone, and just plain more fun. Perhaps you'll find the same.


Twisted - Networking Engine in Python

  •    Python

Twisted is an event-driven networking engine written in Python. Twisted makes it easy to implement custom network applications, both servers and clients. It also supports many common network protocols, including SMTP, POP3, IMAP, SSHv2, DNS and lot more. The twisted.web webserver is a scalable, small-footprint web server that's easy to configure. It's efficient enough to serve a high-traffic website.

Monkey HTTP Daemon - Web Server for Linux

  •    C

Monkey HTTP Daemon, is a very Small, Fast and Lightweight open source Web Server for GNU/Linux. It has been designed to be very scalable with low memory and CPU consumption, the perfect solution for embedded and high production environments. It is asynchronous and event driven. It supports virtual hosts, SSL, Logs etc.

socket - Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP

  •    PHP

Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP. The socket library provides re-usable interfaces for a socket-layer server and client based on the EventLoop and Stream components. Its server component allows you to build networking servers that accept incoming connections from networking clients (such as an HTTP server). Its client component allows you to build networking clients that establish outgoing connections to networking servers (such as an HTTP or database client). This library provides async, streaming means for all of this, so you can handle multiple concurrent connections without blocking.

Embassy - Super lightweight async HTTP server library in pure Swift runs in iOS / MacOS / Linux

  •    Swift

Super lightweight async HTTP server in pure Swift. Please read: Embedded web server for iOS UI testing.

Beaver - 💨A real time messaging server to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps

  •    Go

A Real Time Messaging Server. Beaver is a real-time messaging server. With beaver you can easily build scalable in-app notifications, realtime graphs, multiplayer games, chat applications, geotracking and more in web applications and mobile apps.

oatpp - 🌱Light, high-performance web framework

  •    C++

Zero-Dependency. Performance oriented web-service-development framework. Organic. Pure C++. Cross-Platform Linux/Unix/Windows. See full list of supported-platforms. "Simple API" refers to as API used together with oatpp::web::server::HttpConnectionHandler utilizing multithreading plus blocking-IO approach.

OkSocket - An blocking socket client for Android applications.

  •    Java

An blocking socket client for Android applications. The server is designed for beginners affiliated OkSocket library; beginners can install the project of the app to mobile phones, click the Connect button, the server is only familiar with communication methods and analytical way. The server does not support the heart back, not a commercial server. The server code in SocketServerDemo folder, please note that the reference was reading.

Nugget: Web Socket Server

  •    CSharp

A web socket server implemented in c#. The goal of the projects is to create an easy way to start using HTML5 web sockets in .NET web applications.

Serve the web – HTTP server framework

  •    Rust

Tide is a friendly HTTP server built for casual Rustaceans and veterans alike. It's completely modular, and built directly for async/await. Whether it's a quick webhook, or an L7 load balancer, Tide will make it work. Each Tide endpoint takes a Request and returns a Response. Because async functions allow us to wait without blocking, this makes Tide feel similar to synchronous servers. Except it's incredibly efficient.

EDAS-An Event driven async socket development framework

  •    DotNet

This framework will help you to build async socket application very quickly. It's solves IOCP events,error handling,IO buffer for package receive and visio packet?pack?unpack...... all you need to do is to write your logic

angular-socket-io-seed - A great starting point for writing AngularJS apps backed by a Socket

  •    Javascript

Start an awesome app with AngularJS on the front, Socket.io + Express + Node on the back. This project is an application skeleton for writing AngularJS apps that use web sockets to add real-time functionality. If you're not planning on using web sockets, you should consider the Angular Express Seed instead.The seed contains angular libraries, test libraries and a bunch of scripts all preconfigured for instant web development gratification. Just clone the repo (or download the zip/tarball) and you're ready to develop your application.

zio - unified io lib for pwning development written in python

  •    Python

zio is an easy-to-use io library for pwning development, supporting an unified interface for local process pwning and TCP socket io. The primary goal of zio is to provide unified io interface between process stdin/stdout and TCP socket io. So when you have done local pwning development, you only need to change the io target to pwn the remote server.

web-socket-ruby - HTML5 Web Socket server/client implementation in Ruby

  •    Ruby

HTML5 Web Socket server/client implementation in Ruby

Apache Web Server - Most popular web server on the Internet

  •    C

Apache web server is most popular and widely used web servers. Its features could be extended using modules. mod_proxy is a proxy module, mod_ssl provides ssl support, mod_rewrite provides URL rewriting etc. Virtual hosting is supported. Multiple websites could be accessed from single web server.