5. Asynchronous microservices
HTTP/2 RPC/REST client/server
Built on top of Java 8, Netty
Thrift and gRPC
Armeria is an open-source
asynchronous HTTP/2
RPC/REST client/server
library built on top of Java 8,
Netty, Thrift and gRPC. Its
primary goal is to help
engineers build high-
performance asynchronous
microservices that use
HTTP/2 as a session layer
protocol.
Armeria Features
10. Modularization + Spring Support
Feature Categories
gRPC Support
(Dynamic) Multi-backend Support
11. Modularization + Spring Support
• Modularization since 0.29.0.Final
• core, thrift, grpc, tomcat, zookeeper, etc.
• Active Spring support since 0.46.0
• armeria-spring-boot
• armeria-spring-boot-autoconfigure
• armeria-spring-boot-starter
• Micrometer as the primary metric collection
library since 0.53.0
14. gRPC support
• DocService for gRPC since 0.40.0
• gRPC enhancements since 0.44.0
• Add GRPC client support
• Add structured logging support for GRPC
• Add grpc-web draft support
15. (Dynamic) Multi-backend Support
• ZooKeeper-based EndpointGroup since
0.32.0
• DynamicEndpointGroup since 0.41.0
• notifies its listeners when its list of
Endpoints changes
• Integrated with CentralDogma in LINE
• DNS-based endpoint since 0.53.0
Spring Boot を利用したセットアップのためには、 ArmeriaAutoConfiguration が用意されており、
ServiceRegistrationBean を定義することで、Armeria server を構築できます。
こちらは実は、LINE 社内で利用していた機能を Open source の Armeria に port してきたものです。