Reactive Streams Netty driver


License

License

Categories

Categories

Net React User Interface Web Frameworks Netty Networking Reactor Container Microservices Reactive libraries
GroupId

GroupId

io.projectreactor.ipc
ArtifactId

ArtifactId

reactor-netty
Last Version

Last Version

0.7.15.RELEASE
Release Date

Release Date

Type

Type

jar
Description

Description

Reactive Streams Netty driver
Reactive Streams Netty driver
Project URL

Project URL

https://github.com/reactor/reactor-netty
Project Organization

Project Organization

reactor
Source Code Management

Source Code Management

https://github.com/reactor/reactor-netty

Download reactor-netty

How to add to project

<!-- https://jarcasting.com/artifacts/io.projectreactor.ipc/reactor-netty/ -->
<dependency>
    <groupId>io.projectreactor.ipc</groupId>
    <artifactId>reactor-netty</artifactId>
    <version>0.7.15.RELEASE</version>
</dependency>
// https://jarcasting.com/artifacts/io.projectreactor.ipc/reactor-netty/
implementation 'io.projectreactor.ipc:reactor-netty:0.7.15.RELEASE'
// https://jarcasting.com/artifacts/io.projectreactor.ipc/reactor-netty/
implementation ("io.projectreactor.ipc:reactor-netty:0.7.15.RELEASE")
'io.projectreactor.ipc:reactor-netty:jar:0.7.15.RELEASE'
<dependency org="io.projectreactor.ipc" name="reactor-netty" rev="0.7.15.RELEASE">
  <artifact name="reactor-netty" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.projectreactor.ipc', module='reactor-netty', version='0.7.15.RELEASE')
)
libraryDependencies += "io.projectreactor.ipc" % "reactor-netty" % "0.7.15.RELEASE"
[io.projectreactor.ipc/reactor-netty "0.7.15.RELEASE"]

Dependencies

compile (7)

Group / Artifact Type Version
io.netty : netty-codec-http jar 4.1.34.Final
io.netty : netty-handler jar 4.1.34.Final
io.netty : netty-handler-proxy jar 4.1.34.Final
io.netty : netty-transport-native-epoll jar 4.1.34.Final
io.netty : netty-transport-native-kqueue Optional jar 4.1.34.Final
io.projectreactor : reactor-core jar 3.1.16.RELEASE
org.slf4j : slf4j-api Optional jar 1.7.12

Project Modules

There are no modules declared in this project.

Reactor Netty

Join the chat at https://gitter.im/reactor/reactor-netty

Reactor Netty Download

build CodeQL

Reactor Netty offers non-blocking and backpressure-ready TCP/HTTP/UDP clients & servers based on Netty framework.

Getting it

Reactor Netty requires Java 8 or + to run.

With Gradle from repo.spring.io or Maven Central repositories (stable releases only):

    repositories {
      //maven { url 'https://repo.spring.io/snapshot' }
      maven { url 'https://repo.spring.io/release' }
      mavenCentral()
    }

    dependencies {
      //compile "io.projectreactor.netty:reactor-netty-core:1.0.2-SNAPSHOT"
      compile "io.projectreactor.netty:reactor-netty-core:1.0.1"
      //compile "io.projectreactor.netty:reactor-netty-http:1.0.2-SNAPSHOT"
      compile "io.projectreactor.netty:reactor-netty-http:1.0.1"
    }

See the Reference documentation for more information on getting it (eg. using Maven, or on how to get milestones and snapshots).

Getting Started

New to Reactor Netty? Check this Reactor Netty Workshop and the Reference documentation

Here is a very simple HTTP server and the corresponding HTTP client example

HttpServer.create()   // Prepares an HTTP server ready for configuration
          .port(0)    // Configures the port number as zero, this will let the system pick up
                      // an ephemeral port when binding the server
          .route(routes ->
                      // The server will respond only on POST requests
                      // where the path starts with /test and then there is path parameter
                  routes.post("/test/{param}", (request, response) ->
                          response.sendString(request.receive()
                                                     .asString()
                                                     .map(s -> s + ' ' + request.param("param") + '!')
                                                     .log("http-server"))))
          .bindNow(); // Starts the server in a blocking fashion, and waits for it to finish its initialization
HttpClient.create()             // Prepares an HTTP client ready for configuration
          .port(server.port())  // Obtains the server's port and provides it as a port to which this
                                // client should connect
          .post()               // Specifies that POST method will be used
          .uri("/test/World")   // Specifies the path
          .send(ByteBufFlux.fromString(Flux.just("Hello")))  // Sends the request body
          .responseContent()    // Receives the response body
          .aggregate()
          .asString()
          .log("http-client")
          .block();

Getting help

Having trouble with Reactor Netty? We'd like to help!

Reporting Issues

Reactor Netty uses GitHub’s integrated issue tracking system to record bugs and feature requests. If you want to raise an issue, please follow the recommendations below:

  • Before you log a bug, please search the issue tracker to see if someone has already reported the problem.
  • If the issue doesn't already exist, create a new issue.
  • Please provide as much information as possible with the issue report, we like to know the version of Reactor Netty that you are using, as well as your Operating System and JVM version.
  • If you want to raise a security vulnerability, please review our Security Policy for more details.

Building from Source

You don't need to build from source to use Reactor Netty (binaries in repo.spring.io), but if you want to try out the latest and greatest, Reactor Netty can be easily built with the gradle wrapper. You also need JDK 1.8.

$ git clone https://github.com/reactor/reactor-netty.git
$ cd reactor-netty
$ ./gradlew build

If you want to publish the artifacts to your local Maven repository use:

$ ./gradlew publishToMavenLocal

Javadoc

https://projectreactor.io/docs/netty/release/api/

Guides

License

Reactor Netty is Open Source Software released under the Apache License 2.0

io.projectreactor.ipc

Reactor

Reactive Streams based projects for backpressure-ready asynchronous message passing.

Versions

Version
0.7.15.RELEASE
0.7.14.RELEASE
0.7.13.RELEASE
0.7.12.RELEASE
0.7.11.RELEASE
0.7.10.RELEASE
0.7.9.RELEASE
0.7.8.RELEASE
0.7.7.RELEASE
0.7.6.RELEASE
0.7.5.RELEASE
0.7.4.RELEASE
0.7.3.RELEASE
0.7.2.RELEASE
0.7.1.RELEASE
0.7.0.RELEASE
0.6.6.RELEASE
0.6.5.RELEASE
0.6.4.RELEASE
0.6.3.RELEASE
0.6.2.RELEASE
0.6.1.RELEASE
0.6.0.RELEASE
0.5.2.RELEASE
0.5.1.RELEASE
0.5.0.RELEASE