com.github.mkopylec:charon-spring-boot-starter

Reverse proxy implementation in form of Spring Boot starter.


Keywords
charon, java, proxy, reverse, reverse-proxy, spring, spring-boot, webflux, webmvc
License
Apache-2.0

Documentation

Charon Spring Boot Starter

Build Status Code Coverage Maven Central

Charon is a reverse proxy implementation. It automatically forwards HTTP requests from one HTTP server to another and sends back the received HTTP response to the client. There are some alternative reverse proxy implementations like Zuul or Smiley's HTTP Proxy Servlet. Zuul is highly bounded to Spring Cloud Netflix, Smiley's HTTP Proxy Servlet is a simple one, without advanced features. Charon is a universal Spring Boot tool. It already has a lot of features implemented and its architecture provides an easy way to add new ones.

Features

  • highly configurable and extensible
  • Spring WebMVC and WebFlux support
  • multiple request forwarding mappings
  • load balancing
  • flexible path rewriting
  • Resilience4j support
  • metrics based on Micrometer
  • asynchronous request forwarding
  • authentication
  • cookies rewriting
  • 'X-Forwarded' HTTP headers support
  • forwarding process intercepting
  • configurable HTTP client

Migrating from older versions to 4.x.x

Charon was completely rewritten, configuration via application.yml file is no longer available. Now Charon can be configured by in-code configuration. See the documentation for more details.

Documentation

Full documentation is located here.

License

Charon Spring Boot Starter is published under Apache License 2.0.