Skipper – An HTTP router and reverse proxy for service composition
github.com
github.com
From our benchmarks we can outperform nginx in the pure routing case, while nginx will outperform skipper in the pure sendfile case. HAproxy we did not tested, but I would bet it will be not different from the nginx case. IMO: in general use skipper as microservice router and nginx as streaming router that serves a lot of pictures or videos.
Feature wise we have a lot of things to add as HTTP router that you want to run in front of your microservices, please also see our docs: https://opensource.zalando.com/skipper/ Additionally we build a lot of Kubernetes integrations,for example https://github.com/zalando-incubator/stackset-controller which reduces boilerplate and enables you to do automated blue-green deployments and https://github.com/zalando-incubator/kube-metrics-adapter which enables you to do HPAs with custom metrics, for example hpa based on skipper route request per second.
We are looking at it to do dynamic routing from our system to the Internet and back. That means terminate the request on a client (server), route it to an exit node where it's more appropriate (for instance to bypass GEO restriction) and then send the response back to the origin.
We are looking at some other alternatives, like envoy + istio + gloo, but skipper seems more contained and less container depended.
Skipper serves well microservice workloads for Zalando and other companies, for example shopgun https://medium.com/@roffe/kubernetes-in-production-shopgun-2....
The ALB controller configures Amazon Cloud "Application Load Balancers" and adds a Kubernetes service as the upstream. There's nothing in the data path.
[0] Now adopted by SIG-AWS as https://github.com/kubernetes-sigs/aws-alb-ingress-controlle...