Comments (6)
Thank you for suggestion. One of pros for nghttpx is it can connect to backend using HTTP/2 protocol with L7 routing, which nginx lacks at the moment.
Con is obviously nghttpx has less feature than nginx. But nghttpx has the essential features to be used as ingress controller.
from nghttpx-ingress-lb.
nghttpx can change backend configuration without reloading/process restart. It is just a matter of internal HTTP POST request, and we are done. We use watch interface for Ingress resource, and the application of change is done very fast. I'm not sure that nginx supports this.
from nghttpx-ingress-lb.
That can indeed improve performances (wonder how much given Ingress Controller and Pods are co-located), if the servers behind also support it.
from nghttpx-ingress-lb.
As for location of Ingress controller, and service Pods, Ingress controller is typically running as DaemonSet on dedicated node (e.g, node label selection), and Pods will be on the other nodes.
As long as the latency is not that large, I think it is OK.
Some services, like gRPC, requires h2 protocol, and if they run as Pod, nginx controller is forced to use L4 mode, but nghttpx can forward the gRPC request on L7 layer as usual.
from nghttpx-ingress-lb.
But even nghttpx would be an endpoint for L7 and just create another L7 to gRPC server, no?
from nghttpx-ingress-lb.
If I understand correctly, yes. Ingress is L7 thing.
from nghttpx-ingress-lb.
Related Issues (20)
- Permission denied error while running the container as a non root user HOT 2
- How to configure SSL Passthrough? HOT 1
- How if I only want to implement the HTTP3 on my nginx ingress ? HOT 1
- feature request: routing `type: ExternalName` services HOT 4
- Upgrade to nghttp2 v1.26.0 HOT 2
- Add PROXY protol support for frontend servers HOT 2
- ingress for grpc service HOT 2
- pls add ingress.zlab.co.jp/default-backend-config HOT 4
- request to add publish-service flag HOT 5
- redirect-if-not-tls in backend template HOT 2
- backendconfig API endpoint returned unsuccessful status code 413 HOT 5
- Don't depend on external "diff" command HOT 1
- Use debian-base-amd64 to reduce image size
- is it possible to watch several k8s namespaces? HOT 3
- how to debug the routing process HOT 10
- how load balancing works in nghttpx ingress HOT 9
- Does nghttpx ingress intercept errors? HOT 4
- Failed to start after changing the tls cert HOT 2
- support protocol H1 and H2 HOT 4
- Does this lb support traefik's PathPrefixStrip like feature HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nghttpx-ingress-lb.