envoyproxy / envoy

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

[Dubbo] How to use head match in dubbo_proxy.v2alpha1.RouteMatch #8821

Closed popozy closed 4 years ago

popozy commented 5 years ago

Description

I wonder if there is any progress that has been made during the past two months about the ability of dubbo proxy to support header match or method parameter matching?

relative

popozy commented 5 years ago

cc @zyfjeff

zyfjeff commented 5 years ago

@popozy This depends on our internal hessian2.0 c++ library needs to be open source, we can use this library to complete these functions. Currently, this library is planning to open source

popozy commented 5 years ago

Thanks a lot for your reply~~: )

stale[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or other activity occurs. Thank you for your contributions.

stale[bot] commented 4 years ago

This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted". Thank you for your contributions.

solid210 commented 4 years ago

@popozy This depends on our internal hessian2.0 c++ library needs to be open source, we can use this library to complete these functions. Currently, this library is planning to open source

How is the hessian2.0 c++ library, Is its source opened now? @zyfjeff :)

popozy commented 4 years ago

@popozy This depends on our internal hessian2.0 c++ library needs to be open source, we can use this library to complete these functions. Currently, this library is planning to open source

How is the hessian2.0 c++ library, Is its source opened now? @zyfjeff :)

@solid210 I haven't pay attention to the feature for a few months, but if you really need the feature, I think you could just finish it by yourself. Just need to implement

  1. deserilization for method parameters type, method parameter and attachment
  2. pay attention to the route with the header infos after deserilization in step1 (I dont finish this step because I was focus on how to report dubboproxy span to jaeger to complete opentracing chain) What's more, write a dubbo demo project to debug will help you to understand how does dubbo serialize the tcp package, and you can also read dubbo protocol docs.

After building envoy on ubuntu(16.04 for me), you could take it to docker image or something else to test. When editing envoy source code, try its unit test and you will find a new world(gdb da fa hao ><)!

The following docs may help you.:) http://dubbo.apache.org/zh-cn/blog/dubbo-protocol.html