Oh, you mean that. SkyWalking natively provides HTTP APIs for nearly all protocols, even if not, we are happy to add. There is no block between APISIX and SkyWalking. The point to discuss the gRPC service here is about the performance, including proto's no field name in transmission, enum as int, small int as small, and especially streaming. If you want to implement ALS, then this is super important to provide better performance.
Sheng Wu 吴晟 Twitter, wusheng1108 Chao Zhang <zchao1...@gmail.com> 于2021年3月21日周日 下午1:55写道: > It’s not so easy to use gRPC in APISIX as the lack of ecosystem, but with > the help of gRPC gateway (https://github.com/grpc-ecosystem/grpc-gateway). > We can use the restful APIs to talk with gRPC endpoints. Just like the way > APISIX communicates with ETCD V3 APIs. > > Chao Zhang > https://github.com/tokers > > On March 21, 2021 at 1:53:41 PM, Sheng Wu (wu.sheng.841...@gmail.com) > wrote: > > Chao Zhang <zchao1...@gmail.com> 于2021年3月21日周日 下午1:46写道: > > > Does the gRPC service enables grpc gateway? If so, it’s easy for APISIX > to > > integrate it? > > > > What is the relationship with grpc gateway? > > > > > > > Zexuan Luo <spacewan...@apache.org>于2021年3月21日 周日13:35写道: > > > > > Another solution is wrapping the C++ implementation of the GPRC > > > client. But it requires you to prebuild the proto file into *.c source > > > and can only be distributed as part of apisix-openresty. > > > > > > Zexuan Luo <spacewan...@apache.org> 于2021年3月21日周日 下午1:25写道: > > > > > > > > AFAIK, there is not library support making GPRC directly. > > > > One solution is subrequest + http2grpc, but this way doesn't support > > > > stream mode. So it is not a good solution. > > > > > > > > YuanSheng Wang <membp...@apache.org> 于2021年3月20日周六 下午10:53写道: > > > > > > > > > > LGTM > > > > > > > > > > > The biggest advantage of ALS, is replacing the physical local > > access > > > log > > > > > file. > > > > > > > > > > The APISIX has a plugin `http-logger`, I think APISIX is easy to > > report > > > > > those data to SkyWalking. > > > > > > > > > > And I think we can try to use `gRPC` to report data. What do > > > > > you think? @ming @spacewander > > > > > > > > > > > > > > > > > > > > On Fri, Mar 19, 2021 at 11:43 PM Ming Wen <wenm...@apache.org> > > wrote: > > > > > > > > > > > Cool, I think we can try ALS > > > > > > > > > > > > Sheng Wu <wu.sheng.841...@gmail.com>于2021年3月19日 周五下午11:21写道: > > > > > > > > > > > > > We have run the Envoy ALS performance test a long time ago(2 > > > years, I > > > > > > > think). Sadly, no public blog. > > > > > > > It could easily support 10k-20k/s traffic with a very low load > to > > > the > > > > > > > proxy. But, it is based on gRPC, so basically, it doesn't send > > many > > > > > > things > > > > > > > out, mostly only flags and latency value. > > > > > > > APISIX is using HTTP1.1 mostly, so, this could be different. > > > > > > > Also, at the same time, besides the ALS, we have a chance to > > > provide a > > > > > > push > > > > > > > mode LUA SDK in skywalking meter format. It could provide > > URI-level > > > > > > metrics > > > > > > > at reasonable resource cost, especially it works with > SkyWalking > > > > > > satellite, > > > > > > > which could leverage local disk to cache the data. > > > > > > > The biggest advantage of ALS, is replacing the physical local > > > access log > > > > > > > file. So you have metrics, topology(dependency), and logs in > one > > > package > > > > > > of > > > > > > > data. > > > > > > > > > > > > > > If you want to discuss most ALS in APISIX, I am glad to help > with > > > the > > > > > > > design and integration solution. > > > > > > > > > > > > > > Sheng Wu 吴晟 > > > > > > > Twitter, wusheng1108 > > > > > > > > > > > > > > > > > > > > > Ming Wen <wenm...@apache.org> 于2021年3月19日周五 下午11:08写道: > > > > > > > > > > > > > > > yes, Prometheus is not designed for URI-level metrics. > > > > > > > > > > > > > > > > Does envoy ALS will send too much data and cause performance > > > problems? > > > > > > > > > > > > > > > > And I know skywalking will supoort envoy WASM, is there > > anything > > > apisix > > > > > > > can > > > > > > > > learn from this? > > > > > > > > > > > > > > > > Sheng Wu <wu.sheng.841...@gmail.com>于2021年3月19日 周五下午8:11写道: > > > > > > > > > > > > > > > > > Hi APISIX & SkyWalking community > > > > > > > > > > > > > > > > > > I was discussing with Wei Jin about using Prometheus SDK > to > > > monitor > > > > > > > > > URI-level metrics of APISIX/OpenResty. > > > > > > > > > Wei received feedback that way of using Prometheus SDK > > causing > > > > > > > > > a significant performance impact. From the observability > > > perspective, > > > > > > > > Prom > > > > > > > > > is not good at gathering a large scale of entities' > metrics > > > due to > > > > > > its > > > > > > > > > local cache and pull mode. > > > > > > > > > Instead, we should consider providing a push way like > Envoy > > > ALS[1] > > > > > > and > > > > > > > > > Metrics Service[2] did(it does through gRPC, and > SkyWalking > > > > > > recommended > > > > > > > > in > > > > > > > > > the prod environment. > > > > > > > > > If this is accepted and agreed by the APISIX community, we > > > could look > > > > > > > for > > > > > > > > > implementation in the skywalking-nginx-lua[3] repo to > collect > > > > > > > > metrics(meter > > > > > > > > > in SkyWalking) and use HTTP(in SkyWalking native meter > > format) > > > to > > > > > > > report > > > > > > > > > > > > > > > > > > This mail has been sent to d...@apisix.apache.org and > > > > > > > > > dev@skywalking.apache.org. Please reply all when you > discuss > > > in the > > > > > > > > > thread. > > > > > > > > > > > > > > > > > > [1] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://www.envoyproxy.io/docs/envoy/latest/api-v2/config/accesslog/v2/als.proto > > > > > > > > > [2] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://www.envoyproxy.io/docs/envoy/latest/api-v2/config/metrics/v2/metrics_service.proto > > > > > > > > > [3] https://github.com/apache/skywalking-nginx-lua > > > > > > > > > > > > > > > > > > Sheng Wu 吴晟 > > > > > > > > > Twitter, wusheng1108 > > > > > > > > > > > > > > > > > -- > > > > > > > > Thanks, > > > > > > > > Ming Wen, Apache APISIX PMC Chair > > > > > > > > Twitter: _WenMing > > > > > > > > > > > > > > > > > > > > > -- > > > > > > Thanks, > > > > > > Ming Wen, Apache APISIX PMC Chair > > > > > > Twitter: _WenMing > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > *MembPhis* > > > > > My GitHub: https://github.com/membphis > > > > > Apache APISIX: https://github.com/apache/apisix > > > > > -- > > Best regards > > Alex Zhang > > > > https://github.com/tokers > > https://github.com/upyun/upyun-resty > > > >