携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第八天,点击查看活动详情
调用dubbo接口服务时,总是偶尔可以调用到新加的接口,偶尔调用不到,于是猜测dubbo接口部署了多个,调用到了老接口里面,想要关闭老的接口服务,由于服务部署的比较多,无法确认调用到了哪个服务的dubbo接口
于是通过命令行查看dubbo在zookeeper注册服务的生产者:
首先通过命令进入zookeeper的bin目录,如果不确定zookeeper的目录,使用
ps -ef|grep 'zookeeper'
试一下是否会显示出来,然后使用命令登入zookeeper
./zkCli.sh -server ip:port
在命令行中输入
ls /
可以看到注册的所有dubbo服务,接着输入命令查看dubbo目录下的所有接口文件
ls /dubbo
服务器会列出dubbo服务提供的所有对外的接口,根据这些对外接口可以进入其中一个生产者服务
ls /dubbo/com.XXX/providers
操作完成后,查出了多个生产者数据,将查出的数据进行url解密后,确定dubbo服务的端口号
使用netstat -nlp|grep 端口号查看端口的状态,再用命令ps -ef|grep 进程号查出具体的服务
再使用kill -9 进程号 关闭不需要的服务
再次查看dubbo在zookeeper注册服务的生产者,发现两个变为了一个
至此,命令行查看dubbo在zookeeper注册服务的生产者并关闭多余的生产者功能就已经完成了,可以对比一下关闭前与关闭后的生产者服务,可以发现不需要的服务已经关掉了,再次调用服务也不会调用到之前的服务