vert.x README

The project's README from github.com/eclipse-vertx/vert.x. As one markdown file: README.md.

Build Status (5.x) Build Status (4.x)

Vert.x Core

This is the repository for Vert.x core.

Vert.x core contains fairly low-level functionality, including support for HTTP, TCP, file system access, and various other features. You can use this directly in your own applications, and it's used by many of the other components of Vert.x.

For more information on Vert.x and where Vert.x core fits into the big picture please see the website.

Building Vert.x artifacts

> mvn package

Running tests

Runs the tests

> mvn test

Tests can be run with specified HTTP port and/or HTTPS port.

> mvn test -Dvertx.httpPort=8888 -Dvertx.httpsPort=4044

Vert.x supports native transport on BSD and Linux, to run the tests with native transport

> mvn test -PNativeEpoll
> mvn test -PNativeIoUring
> mvn test -PNativeKQueue

Vert.x supports domain sockets on Linux exclusively, to run the tests with domain sockets

> mvn test -PNativeEpoll+DomainSockets

Vert.x has integrations tests that run a differently configured JVM (classpath, system properties, etc....)

> vertx verify -Dtest=FooTest # FooTest does not exists, its only purpose is to execute no tests during the test phase

Building documentation

> mvn package -Pdocs -DskipTests

Open target/docs/vertx-core/java/index.html with your browser

vert.x (eclipse-vertx/vert.x)

Searching Database…

14.7K ·GitHub
Что это такое?Vert.x Core — это набор инструментов для создания реактивных приложений, управляемых событиями, на JVM. Он предоставляет низкоуровневую поддержку HTTP, TCP, работы с файловой системой и многого другого.
Это фреймворк или библиотека, которую я вызываю напрямую?Это набор инструментов/библиотека, которую вы встраиваете в свои приложения на JVM, а не полноценный фреймворк, диктующий структуру приложения. Многие высокоуровневые компоненты Vert.x построены поверх этого базового модуля.
Как мне добавить это в проект?Добавьте артефакт vertx-core как зависимость через инструмент сборки для JVM (Maven/Gradle). В README основное внимание уделено сборке артефактов из исходников с помощью входящих в состав скриптов сборки.
Нужно ли что-то кроме Java, чтобы это запустить?Нужна JVM. Ядро Vert.x построено на Netty для своего слоя неблокирующего ввода-вывода.
Работает ли нативный транспорт на любой ОС?Поддержка нативного транспорта (для повышения производительности) ограничена BSD и Linux, а Unix-доменные сокеты поддерживаются исключительно в Linux.
Какие сетевые протоколы поддерживает ядро Vert.x из коробки?Оно предоставляет встроенную поддержку HTTP (включая HTTP/2), TCP, UDP и работы с файловой системой, построенную поверх неблокирующего ввода-вывода Netty.
Зачем мне использовать Vert.x вместо написания кода напрямую на Netty?Vert.x оборачивает Netty в более высокоуровневый управляемый событиями API (модель цикла обработки событий Vert.x). Так вы получаете реактивную неблокирующую сетевую работу, не управляя низкоуровневыми деталями Netty напрямую, и при этом её могут использовать другие компоненты экосистемы Vert.x, построенные поверх неё.
Как генерируется документация для этого модуля?При запуске сборки генерируются HTML-документы, которые можно открыть локально, например по пути target/docs/vertx-core/java/index.html.
What are similar projects?gnet, akka-core, swoole-src, JCSprout, netty, uvloop, kafka, dubbo
Size
124.2 MB
Stars
14.7K
Updated
CommitOct 16
Age
15y
Commits · 90 Days