jiangmin168168 / jim-framework

一些公共组件及学习应用:RPC/统一配置中心/基于注解的分布式锁/dubbo请求级缓存/调用链追踪/RabbitMQ/Elasticsearch/zookeeper/Sping boot
Apache License 2.0
540 stars 286 forks source link

你好,如果是feign+dubbo的话,怎么监控呢? #1

Closed ExtremeYu closed 7 years ago

jiangmin168168 commented 7 years ago

没太理解你说的监控,是指我代码中实现的那个zipkin调用链吗?如果是的话,我实现的机制是通过dubbo的filter,这与feign应该没有直接关系,你只需要在客户端以及服务端启用这个filter就行,如果理解不到位你可以详细描述你的问题。

ExtremeYu commented 7 years ago

是这样,目前的调用莲是 用户→Service(HTTP)→Service1(RPC)→Service2(RPC)→Service3(RPC)→。。。(RPC)→Service4(HTTP)→用户,大概这样

ExtremeYu commented 7 years ago

你写的这个只针对了dubbo范围内的rpc调用链把

jiangmin168168 commented 7 years ago

是,只是dubbo范围内的,如果你想扩大范围,也很容易。比如你用了spring mvc,那么它也有filter机制,比如你想扩大的数据持久层,像mybatis也有扩展的接口。原理就是找到一个切面的地方去完成跟踪信息即可。

ExtremeYu commented 7 years ago

加了这两个filter后发现响应时间从70ms暴增到2000ms+,是哪里没有配置对吗?

ExtremeYu commented 7 years ago

为什么需要区分provider 和consumer呢,不是只要被调用到就向zipkin发一次数据不就行了吗

jiangmin168168 commented 7 years ago

为什么需要区分provider 和consumer呢 答:这是微服务区分,与zipkin没有关系 加了这两个filter后发现响应时间从70ms暴增到2000ms+,是哪里没有配置对吗? 答:性能问题,我暂时未关注,周末我测试测试

ExtremeYu commented 7 years ago

一定要测试下啊,还有,parentId Id 已经在4.x版本·被废除了,不能去更改它们了,所以代码里有废除线

jiangmin168168 commented 7 years ago

我修改了测试代码,只调用一次远程接口,看起来正常:https://github.com/jiangmin168168/jim-framework/blob/master/jim-framework-doc/images/dubbo-zipkin.jpg

ExtremeYu commented 7 years ago

@jiangmin168168 680ms啊!而且只是非常简单的接口,这种接口不应该5ms就完成吗