disruptor README

The project's README from github.com/LMAX-Exchange/disruptor. As one markdown file: README.md.

= LMAX Disruptor

image:https://github.com/LMAX-Exchange/disruptor/workflows/Java%20CI%20with%20Gradle/badge.svg[Java CI with Gradle,link=https://github.com/LMAX-Exchange/disruptor/actions/workflows/gradle-build.yml] image:https://github.com/LMAX-Exchange/disruptor/workflows/CodeQL/badge.svg[CodeQL,link=https://github.com/LMAX-Exchange/disruptor/actions/workflows/codeql-analysis.yml] image:https://img.shields.io/github/license/LMAX-Exchange/disruptor[License,link=https://github.com/LMAX-Exchange/disruptor/blob/master/LICENCE.txt]

A High Performance Inter-Thread Messaging Library

== Maintainer

LMAX Development Team

== Support

== Documentation

disruptor (LMAX-Exchange/disruptor)

Searching Database…

18.5K ·GitHub
Что это такое?LMAX Disruptor — это Java-библиотека для быстрого обмена сообщениями между потоками внутри одного приложения, то есть очень быстрая передача событий внутри процесса.
Это библиотека, которую я подключаю к своему Java-проекту, или что-то, что разворачивается как сервер?Это библиотека: вы добавляете её как зависимость в свой Java-проект и используете внутри своего процесса — никакого сервера или демона разворачивать не нужно.
Как подключить её к проекту и начать пользоваться?Начните с Guide и документации, на которые ссылается README, — там пошагово разбирается модель программирования; затем подключите библиотеку в сборку Gradle или Maven.
Нужно ли что-то ещё, кроме JDK, чтобы её запустить?Только JDK — это чистая Java без нативных компонентов и внешних сервисов; в собственном CI проекта она собирается через Gradle.
То есть она связывает потоки внутри одного приложения и не передаёт сообщения между машинами или сервисами?Верно — её задача ограничивается обменом сообщениями между потоками внутри одной JVM. Это не сетевой брокер, и между машинами или сервисами сообщения она не передаёт.
Для каких приложений она создана?Для Java-систем, чувствительных к задержкам, — библиотека вышла из команды LMAX Exchange, так что речь о конвейерах внутри процесса, где пропускная способность и время отклика важнее удобства.
Работу с конкурентностью реально тестируют под нагрузкой, или мне остаётся просто верить на слово?В CI запускаются наборы тестов Java Concurrency Stress (jcstress) — быстрый прогон плюс глубокий ручной — вместе со сборками Gradle и анализом CodeQL.
Можно ли использовать её в коммерческом ПО?Да — она распространяется по лицензии Apache-2.0, это разрешительная лицензия, так что свободно используйте её в коммерческих продуктах.
Это проверенное временем решение или недавний эксперимент?Решение проверенное: репозиторий ведёт историю с 2012 года, проект поддерживает команда LMAX Development Team, а стресс-тесты встроены в CI.
Size
9.9 MB
Stars
18.5K
Age
14y
Commits · 90 Days