smallrye-mutiny
所属分类:工具库
开发工具:Java
文件大小:0KB
下载次数:0
上传日期:2023-07-12 12:36:24
上 传 者:
sh-1993
说明: 一个直观的事件驱动的Java React编程库,
(An Intuitive Event-Driven Reactive Programming Library for Java,)
文件列表:
.build/ (0, 2023-12-13)
.build/BlameAPI.java (5398, 2023-12-13)
.build/CompatibilityUtils.java (9304, 2023-12-13)
.build/Helper.java (2301, 2023-12-13)
.build/PostRelease.java (6659, 2023-12-13)
.build/PreRelease.java (4569, 2023-12-13)
.build/UpdateDocsAttributesFiles.java (2554, 2023-12-13)
.build/WaitForCentral.java (5263, 2023-12-13)
.build/cut-release.sh (2164, 2023-12-13)
.build/decrypt-secrets.sh (373, 2023-12-13)
.build/deploy-release.sh (437, 2023-12-13)
.build/deploy-site.sh (264, 2023-12-13)
.build/deploy-snapshot.sh (449, 2023-12-13)
.build/install-mkdocs-deps.sh (64, 2023-12-13)
.build/justfile-for-release (3900, 2023-12-13)
.build/maven-ci-settings.xml (1340, 2023-12-13)
.build/maven-settings.xml.gpg (513, 2023-12-13)
.build/mock-events/ (0, 2023-12-13)
.build/mock-events/release-workflow-event.json (101, 2023-12-13)
.build/mock-events/tag-creation-event.json (69, 2023-12-13)
.build/smallrye-sign.asc.gpg (6497, 2023-12-13)
.build/update-workshop-target-version.sh (158, 2023-12-13)
.mvn/ (0, 2023-12-13)
... ...
![Build Status](https://github.com/smallrye/smallrye-mutiny/actions/workflows/build-main.yml/badge.svg)
![Build status (1.x branch)](https://github.com/smallrye/smallrye-mutiny/actions/workflows/build-1.x.yml/badge.svg)
![License](https://img.shields.io/github/license/smallrye/smallrye-mutiny.svg)
![Maven Central](https://img.shields.io/maven-central/v/io.smallrye.reactive/mutiny?color=green)
![Javadoc](https://javadoc.io/badge2/io.smallrye.reactive/mutiny/javadoc.svg)
# Mutiny, an Intuitive Event-Driven Reactive Programming Library for Java
[Mutiny is a modern reactive programming library for Java](https://smallrye.io/smallrye-mutiny/).
Mutiny provides a simple but powerful asynchronous development model to build reactive applications.
This project is sponsored by [Red Hat](https://www.redhat.com/).
## Overview
Mutiny can be used in any Java application exhibiting asynchrony.
From reactive microservices, data streaming, event processing to API gateways and network utilities, Mutiny is a great fit.
### Event-Driven
Mutiny places events at the core of its design.
With Mutiny, you observe events, react to them, and create elegant and readable processing pipelines.
** A PhD in functional programming is not required.**
### Navigable
Even with smart code completion, classes with hundred of methods are confusing.
Mutiny provides a navigable and explicit API driving you towards the operator you need.
### Non-Blocking I/O
Mutiny is the perfect companion to tame the asynchronous nature of applications with non-blocking I/O.
Declaratively compose operations, transform data, enforce progress, recover from failures and more.
### Quarkus and Vert.x native
Mutiny is integrated in [Quarkus](https://quarkus.io) where every reactive API uses Mutiny, and [Eclipse Vert.x](https://vertx.io) clients are made available using [Mutiny bindings](https://github.com/smallrye/smallrye-mutiny-vertx-bindings).
Mutiny is however an independent library that can ultimately be used in any Java application.
### Reactive Converters Built-In
Mutiny is based on the [Reactive Streams protocol](https://www.reactive-streams.org/), and so it can be integrated with any other reactive programming library.
In addition, Mutiny offers converters to interact with other popular libraries and [Kotlin](https://kotlinlang.org/).
## Mutiny workshop examples
You can learn about Mutiny from the [documentation and website](https://smallrye.io/smallrye-mutiny).
This repository also contains the [Mutiny workshop examples](workshop-examples) that cover the common concerns through self-contained executable [JBang](https://www.jbang.dev/) scripts.
## Build instructions
Mutiny is built with Apache Maven, so all you need is:
```shell
./mvnw install
```
If you want to run a _quick_ build without running tests or generating API docs, then run:
```shell
./mvnw -Dquickly
```
| Git branch | Versions | Baseline | Compliance |
|------------|--------------------------------|---------------------------------------|----------------------------|
| `main` | 2.x *(in development)* | Java 11, `java.util.concurrent.Flow ` | Reactive Streams TCK 1.0.4 |
| `1.x` | 1.x.y *(backports, bug fixes)* | Java 8, Reactive Streams 1.0.4 | Reactive Streams TCK 1.0.4 |
## Contributing
See [the contributing guidelines](CONTRIBUTING.md)
Mutiny is an open project, feel-free to:
- [report issues](https://github.com/smallrye/smallrye-mutiny/issues), and
- [propose enhancements via pull-requests](https://github.com/smallrye/smallrye-mutiny/pulls).
## Discussions and support
For anything related to the usage of Mutiny in Quarkus, please refer to the [Quarkus support](https://quarkus.io/support/)
For more general discussions about Mutiny, you can:
- [start a new discussion thread in GitHub Discussions (preferred option)](https://github.com/smallrye/smallrye-mutiny/discussions), or
- [use the `mutiny` tag on StackOverflow](https://stackoverflow.com/questions/tagged/mutiny).
## Publications
Julien Ponge, Arthur Navarro, Clément Escoffier, and Frédéric Le Moul. 2021. **[Analysing the Performance and Costs of Reactive Programming Libraries in Java](https://doi.org/10.1145/3486605.3486788).** *In Proceedings of the 8th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems (REBLS ’21)*, October 18, 2021, Chicago, IL, USA. ACM, New York, NY, USA, 10 pages. [(PDF)](https://hal.inria.fr/hal-03409277/document)
近期下载者:
相关文件:
收藏者: