# eclipse-vertx/vert.x

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/eclipse-vertx-vert-x).**

14,667 stars · 2,105 forks · Java · NOASSERTION

## Links

- GitHub: https://github.com/eclipse-vertx/vert.x
- Homepage: http://vertx.io
- awesome-repositories: https://awesome-repositories.com/repository/eclipse-vertx-vert-x.md

## Topics

`concurrency` `event-loop` `high-performance` `http2` `java` `jvm` `netty` `nio` `non-blocking` `reactive` `vertx`

## Description

Vert.x is a reactive polyglot framework and asynchronous programming library for the Java Virtual Machine. It functions as an event-driven networking framework and toolkit for building non-blocking applications.

The system enables the development of high-concurrency network services and event-driven microservices. It supports the creation of reactive services using multiple languages running on the JVM.

The framework covers a wide range of capabilities including the management of HTTP and TCP network protocols, non-blocking file system access, and the integration of reactive clients.

## Tags

### Programming Languages & Runtimes

- [Event Loops](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/concurrency/execution-models/multi-threaded-execution/event-loops.md) — Implements a high-performance event loop architecture to handle concurrent client connections without expensive context switching.
- [JVM Reactive Toolkits](https://awesome-repositories.com/f/programming-languages-runtimes/jvm-reactive-toolkits.md) — Supplies a specialized set of libraries for asynchronous, non-blocking application development on the JVM.
- [Reactive Application Development](https://awesome-repositories.com/f/programming-languages-runtimes/reactive-application-development.md) — Provides the foundational toolkit for building high-performance, non-blocking JVM applications.
- [Asynchronous Programming](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments/runtimes/asynchronous-execution-engines/asynchronous-programming.md) — Acts as a comprehensive library for managing concurrent operations and parallel execution flows.

### Networking & Communication

- [Event-Driven Networking](https://awesome-repositories.com/f/networking-communication/event-driven-networking.md) — Provides a high-performance runtime model for managing TCP and HTTP communication via non-blocking I/O.
- [High-Concurrency Networking](https://awesome-repositories.com/f/networking-communication/high-concurrency-networking.md) — Designed to manage massive numbers of simultaneous network connections for high-throughput services.
- [Network Protocols](https://awesome-repositories.com/f/networking-communication/network-protocols.md) — Provides robust implementations of HTTP and TCP protocols for fast and reliable data exchange. ([source](https://cdn.jsdelivr.net/gh/eclipse-vertx/vert.x@master/README.md))
- [Reactive Client Integrations](https://awesome-repositories.com/f/networking-communication/reactive-client-integrations.md) — Offers modular reactive clients for connecting to web APIs and databases asynchronously. ([source](http://vertx.io/))
- [Multi-Reactor Implementations](https://awesome-repositories.com/f/networking-communication/reactor-patterns/multi-reactor-implementations.md) — Scales throughput by distributing event loops across multiple CPU cores for parallel execution.

### Software Engineering & Architecture

- [Non-blocking I/O](https://awesome-repositories.com/f/software-engineering-architecture/concurrent-task-execution/non-blocking-i-o.md) — Utilizes non-blocking I/O multiplexing to monitor multiple network connections simultaneously without stalling threads.
- [Event-Driven Architectures](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures.md) — Enables the creation of decoupled microservices that communicate via an asynchronous event-driven architecture.
- [Future-Based Concurrency Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/future-based-concurrency-frameworks.md) — Uses futures and promises to manage the eventual results of asynchronous operations and simplify concurrency logic.
- [Reactive Execution Engines](https://awesome-repositories.com/f/software-engineering-architecture/high-performance-engineering/reactive-execution-engines.md) — Ships a high-performance reactive engine that handles asynchronous I/O to support massive concurrency. ([source](http://vertx.io/))
- [Message Passing Systems](https://awesome-repositories.com/f/software-engineering-architecture/message-passing-systems.md) — Provides a decoupled event bus for asynchronous, thread-safe communication between isolated execution units.
- [Verticle-Based Componentization](https://awesome-repositories.com/f/software-engineering-architecture/verticle-based-componentization.md) — Employs verticles as isolated units of logic to encapsulate state and react to events.
- [Asynchronous File I/O](https://awesome-repositories.com/f/software-engineering-architecture/non-blocking-io-architectures/asynchronous-file-i-o.md) — Implements non-blocking interfaces for file system operations to prevent execution thread stalls.

### DevOps & Infrastructure

- [Reactive Frameworks](https://awesome-repositories.com/f/devops-infrastructure/cloud-native-orchestration/cloud-native-application-development/reactive-frameworks.md) — Supports a polyglot approach to building non-blocking, event-driven services using multiple JVM languages.

### Operating Systems & Systems Programming

- [Asynchronous File Access](https://awesome-repositories.com/f/operating-systems-systems-programming/file-system-access/asynchronous-file-access.md) — Provides non-blocking utilities for reading and writing files to keep the application responsive. ([source](https://cdn.jsdelivr.net/gh/eclipse-vertx/vert.x@master/README.md))
