Java CI with Gradle License

A powerful reverse proxy redirecting multiple protocols on a same port.


  • Redirect network traffic from ONE port with multiple protocols:HTTP1.1/ HTTP/2(gRPC)/ redis
  • Use as a SDK or deploy as a standalone proxy


Usage Scenarios

  • Protocol Upgrade: Adopt a newer/better protocol to strengthen your app without changing origin behaviors. HTTP/1.1 -> gRPC etc.
  • Unary Gateway: Act as an all-in-one gateway to hide the complex topology of internal system.
  • FaaS Negotiator Component : Talk to different 3rd-party systems with ZERO configuration.
  • Faraway from Legacy Systems: No need to modify DNS or protocol’s config of those corrupt apps.

Quick Start

You can take a look at examples and run a portifi server quickly.

Or read this quick start.


  • JDK: 8 or higher

Add Portifi to your project’s build.gradle.kts.

dependencies {

Start Portifi server to proxy HTTP(8080) on port 9999.

fun main() {

Start a backend HTTP server at 8080 (python3 as a sample).

$ python3 -m http.server 8080

Run a test

$ curl localhost:9999


View Github