envoyproxy / envoy

Cloud-native high-performance edge/middle/service proxy
https://www.envoyproxy.io
Apache License 2.0
25.05k stars 4.82k forks source link

Does Envoy intend to evolve to an application runtime? #15113

Open nobodyiam opened 3 years ago

nobodyiam commented 3 years ago

Envoy is a great service proxy and is now the default data plane for many service mesh products, which works well to solve many companys' service connectivity challenges.

Yet, in real world cases, a typical company may face much more challenges in areas like cache, database, message queue, configuration management, etc. Which means we still need to maintain a set of heavy weight SDKs along with the application code.

With the release of dapr 1.0.0, we see another possiblity: the sidecar becomes an application runtime that abstracts away the details of backend servcies, so that the application code could safely program against one set of standard api and forget about the issues such as how to handle database failover, how to work with different cloud providers, etc.

image

I understand envoy currently does have a set of filters such as MySQL proxy, Kafka Broker filter, Redis proxy, etc. But they looks to me more like a transparent proxy instead of an abstraction layer, and the client side still need to talk the same language as the backend services, which means the client is still tightly coupled to the backend services.

So my question is: Does Envoy intend to evolve to an application runtime?

Looking forward to your ideas/comments on this topic!

mattklein123 commented 3 years ago

This is something I have thought about and would be interested in discussing. I think with WASM this becomes tractable in some pretty interesting ways. Can you reach out to me and we can discuss further (contact info on my website if you can't otherwise find it)?

daixiang0 commented 2 years ago

Any update for this?

coodoing commented 2 years ago

any further progress?