Asynchronous RPC/REST library built on top of Java 8, Netty, HTTP/2, Thrift and gRPC
Switch branches/tags
armeria-0.71.1 armeria-0.71.0 armeria-0.70.1 armeria-0.70.0 armeria-0.69.0 armeria-0.68.2 armeria-0.68.1 armeria-0.68.0 armeria-0.67.2 armeria-0.67.1 armeria-0.67.0 armeria-0.66.0 armeria-0.65.1 armeria-0.65.0 armeria-0.64.0 armeria-0.63.1 armeria-0.63.0 armeria-0.62.0 armeria-0.61.0 armeria-0.60.0 armeria-0.59.2 armeria-0.59.1 armeria-0.59.0 armeria-0.58.1 armeria-0.58.0 armeria-0.57.0 armeria-0.56.1 armeria-0.56.0 armeria-0.55.1 armeria-0.55.0 armeria-0.54.2 armeria-0.54.1 armeria-0.54.0 armeria-0.53.2 armeria-0.53.1 armeria-0.53.0 armeria-0.52.1 armeria-0.52.0 armeria-0.51.0 armeria-0.50.0 armeria-0.49.0 armeria-0.48.0 armeria-0.47.0 armeria-0.46.4 armeria-0.46.3 armeria-0.46.2 armeria-0.46.1 armeria-0.46.0 armeria-0.45.0 armeria-0.44.0 armeria-0.43.0 armeria-0.42.0 armeria-0.41.0 armeria-0.40.0 armeria-0.39.0 armeria-0.38.0 armeria-0.37.0 armeria-0.36.0 armeria-0.35.2 armeria-0.35.1 armeria-0.35.0 armeria-0.34.1 armeria-0.34.0 armeria-0.33.1 armeria-0.33.0 armeria-0.32.0 armeria-0.31.1.Final armeria-0.31.0.Final armeria-0.30.0.Final armeria-0.29.1.Final armeria-0.29.0.Final armeria-0.28.0.Final armeria-0.27.0.Final armeria-0.26.1.Final armeria-0.26.0.Final armeria-0.25.0.Final armeria-0.24.1.Final armeria-0.24.0.Final armeria-0.23.1.Final armeria-0.23.0.Final armeria-0.22.0.Final armeria-0.21.6.Final armeria-0.21.5.Final armeria-0.21.4.Final armeria-0.21.3.Final armeria-0.21.2.Final armeria-0.21.1.Final armeria-0.21.0.Final armeria-0.20.3.Final armeria-0.20.2.Final armeria-0.20.1.Final armeria-0.20.0.Final armeria-0.19.0.Final armeria-0.18.0.Final armeria-0.17.0.Final armeria-0.16.1.Final armeria-0.16.0.Final armeria-0.15.0.Final armeria-0.14.0.Final armeria-0.13.4.Final
Nothing to show
Clone or download
trustin Fix ByteBuf leaks in gRPC client and server (#1371)
- Closes #1370
- Make sure a request is always closed in `ArmeriaClientCall`
- Make sure an `HttpStreamReader` is always cleaned up when a request it
  is reading is closed.
- Fixed an incomplete test case `GrpcClientTest.largeUnary_unsafe()`
- Fixed a leak in `ArmeriaServerCallTest`
Latest commit d4f13e4 Sep 20, 2018
Failed to load latest commit information.
.github Add CODEOWNERS (#1098) Mar 16, 2018
benchmarks Optimize complexity of client endpoint WeightedRoundRobinStrategy (#1248 Jun 12, 2018
core Fix NPE in HttpRequestSubscriber.onSubscribe() (#1369) Sep 19, 2018
docs-client Apply collapse to side menu (#1345) Aug 28, 2018
examples Remove unnecessary buildscript section Aug 28, 2018
gradle Update dependencies (#1365) Sep 13, 2018
grpc Fix ByteBuf leaks in gRPC client and server (#1371) Sep 20, 2018
it Update dependencies (#1365) Sep 13, 2018
jetty Update dependencies (#1359) Sep 7, 2018
kafka Add additionalResponseHeaders and additionalRequestHeaders (#1225) May 29, 2018
licenses Add SAML single-sign-on support (#1292) Aug 3, 2018
logback Update dependencies (#1365) Sep 13, 2018
retrofit2 Fix wrong assert condition in AremriaCallFactoryTest (#1367) Sep 17, 2018
rxjava Update dependencies (#1347) Aug 28, 2018
saml Add SAML single-sign-on support (#1292) Aug 3, 2018
settings Add the first example project (#1306) Jul 26, 2018
site Fix advanced logging document consistency (#1352) Aug 30, 2018
spring Generate config metadata for Spring (#1340) Aug 20, 2018
testing-internal Fix IntelliJ IDEA inspection warnings (#1202) May 16, 2018
testing Abort a response stream immediately when a client aborts the stream (#… Sep 4, 2018
thrift Update dependencies (#1365) Sep 13, 2018
thrift0.9 Do not confuse an IDE by having a source directory with two output di… Jun 19, 2018
tomcat Update dependencies (#1365) Sep 13, 2018
tomcat8.0 Update dependencies (#1280) Jul 11, 2018
tomcat8.5 Update dependencies (#1365) Sep 13, 2018
zipkin Use thread local when creating scopes off of the request context thre… Sep 6, 2018
zookeeper Fix IntelliJ IDEA inspection warnings (#1202) May 16, 2018
.appveyor.yml Add Yarn cache directory to CI settings Aug 10, 2018
.codecov.yml Add .codecov.yml to adjust the threshold Dec 5, 2017
.gitattributes Switch from Maven to Gradle (#294) Oct 5, 2016
.gitignore Migrate docs client webapp to React / Typescript / Material UI (#1288) Jul 30, 2018
.post-release-msg Armeria version -> Armeria Aug 28, 2018
.travis.yml Remove unused cache Sep 5, 2018 Create (#950) Jan 8, 2018 Update (#1320) Aug 1, 2018
LICENSE.txt Update NOTICE.txt and dependency license information (#742) Sep 6, 2017
NOTICE.txt Add missing notice about OpenSAML (#1364) Sep 12, 2018 Update documentation (#944) Jan 4, 2018
build.gradle Fix ByteBuf leaks in gRPC client and server (#1371) Sep 20, 2018
dependencies.yml Update dependencies (#1365) Sep 13, 2018 Update the project version to 0.71.2-SNAPSHOT Sep 11, 2018
gradlew Update Gradle to 4.0.1 (#679) Jul 12, 2017
gradlew.bat Switch from Maven to Gradle (#294) Oct 5, 2016
settings.gradle Add examples of annotated HTTP service (#1330) Aug 13, 2018

Visit the official web site for more information.


Armeria is an open-source asynchronous RPC/API client/server library built on top of Java 8, Netty 4.1, HTTP/2, Thrift and gRPC. Its primary goal is to help engineers build high-performance asynchronous microservices that use HTTP/2 as a session layer protocol.

It is open-sourced and licensed under Apache License 2.0 by LINE Corporation, who uses it in production.

How to build

We use Gradle to build Armeria. The following command will compile Armeria and generate JARs and web site:

$ ./gradlew build

How to ask a question

Just create a new issue to ask a question, and browse the list of previously answered questions.

We also have a Slack workspace.

How to contribute