修复dubbo注册中心警告bug

原创 2017年03月01日 16:34:04

1.dubbo注册中心服务提供者界面显示警告,点击提示不同服务名注册了相同服务,

这是界面显示逻辑bug,源码文件位置:/dubbo-admin/src/main/webapp/WEB-INF/templates/governance/screen/providers/index.vm

部分代码如下:

#set($providerApplication = "")
#foreach($provider in $providers)
<tr>
	<td><input type="checkbox" name="ids" value="$provider.id" /></td>
	<td><a href="providers/$provider.id">#if($address)$tool.getSimpleName($provider.service)#else$provider.address#end</a></td>
	<td>$tool.getProviderWeight($provider)</td>
	<td>#if($provider.dynamic)<font color="green">$i18n.get("dynamic")</font>#else<font color="blue">$i18n.get("static")</font>#end</td>
	<td>#if($tool.isProviderEnabled($provider))<font color="green">$i18n.get("enabled")</font>#else<font color="red">$i18n.get("disabled")</font>#end</td>
	<td>
		#set($errorLevel = "ok")
		#set($errorMessage = "")
		
		#if ($providerApplication == "")
			#set($providerApplication = $provider.application)
		#end
		
        #if($providerApplication != $provider.application)
        	#if ($errorLevel != "error") #set($errorLevel = "warn") #end
        	#set($errorMessage = "$errorMessage<br>$i18n.get('warn'): $i18n.get('CheckProviderApplicationDifferent', $providerApplication, $provider.application)")
        #end
        #if($provider.address.startsWith("127.") || $provider.address.startsWith("localhost:") || $provider.address.startsWith("0.0.0.0:"))

当判断providerApplication的值和provider.application的值不相同时就给出警告。就成为只要应用名和第一个遍历出来的不一样就加警告。而我们想要的警告是不同应用发布了相同的服务时给出警告。修改后的代码如下:

#foreach($provider in $providers)
<tr>
	<td><input type="checkbox" name="ids" value="$provider.id" /></td>
	<td><a href="providers/$provider.id">#if($address)$tool.getSimpleName($provider.service)#else$provider.address#end</a></td>
	<td>$tool.getProviderWeight($provider)</td>
	<td>#if($provider.dynamic)<font color="green">$i18n.get("dynamic")</font>#else<font color="blue">$i18n.get("static")</font>#end</td>
	<td>#if($tool.isProviderEnabled($provider))<font color="green">$i18n.get("enabled")</font>#else<font color="red">$i18n.get("disabled")</font>#end</td>
	<td>
		#set($errorLevel = "ok")
		#set($errorMessage = "")
		
		#foreach($patchProvider in $providers)
			#if ($patchProvider.application != $provider.application)
				#if ($provider.service == $patchProvider.service)
					#if ($errorLevel != "error") #set($errorLevel = "warn") #end
					#set($errorMessage = "$errorMessage<br>$i18n.get('warn'): $i18n.get('CheckProviderApplicationDifferent', $patchProvider.application, $provider.application)")
					#break
				#end
			#end
		#end
        
        #if($provider.address.startsWith("127.") || $provider.address.startsWith("localhost:") || $provider.address.startsWith("0.0.0.0:"))

Dubbo高级篇_11_dubbo服务只订阅(开发调试)

只订阅 (+) (#) 问题 为方便开发测试,经常会在线下共用一个所有服务可用的注册中心,这时,如果一个正在开发中的服务提供者注册,可能会影响消费者不能正常运行。 ...
  • hardworking0323
  • hardworking0323
  • 2016年04月16日 10:22
  • 4171

Dubbo-admin无法显示Group分组信息以及是否可以显示多个分组

背景:在首次使用Dubbo的时候,我们可能都会使用Dubbo-admin来监控服务的提供者和消费者,但是在自己的生产者成功运行的时候,在Dubbo-admin却看不到任何信息。如果在确保代码的正确无误...
  • u010870518
  • u010870518
  • 2015年12月17日 18:54
  • 6805

dubbo+zookeeper实现服务远程调用

dubbo场景:            随着网站应用规模的扩大,服务越来越多,服务间依赖关系变得错综复杂,服务的调用量越来越大,服务的容量问题暴露出来,dubbo在这种情况下诞生。 dubbo...
  • u010097777
  • u010097777
  • 2017年01月04日 21:45
  • 2962

dubbo学习笔记(1)-注册中心和管理平台部署

一 , dubbo注册中心安装 这里用到的是zookeeper,当然还有其他的方式,只是我自己也还未研究,有兴趣的话可以自己找资料看看 第一步,去zookeeper官网下载 , 地址是 http://...
  • zhangheng1633
  • zhangheng1633
  • 2017年03月13日 14:25
  • 222

Dubbo之旅--扩展注册中心

在上篇文章中我们介绍了关于协议的扩展,并了解扩展它所需要的需求.本篇主要是对注册中心的扩展进行着重的探索.         同样的问题,为什么我们需要去扩展注册中心的?主要有以下三个需求....
  • juan0728juan
  • juan0728juan
  • 2016年09月05日 16:33
  • 200

2016年工作中遇到的问题41-50:Dubbo注册中心奇葩问题,wifi热点坑了

wifi热点启动了,但是没有正常连网,却占了1个ipv4的地址。 dubbo恰好又优先使用了这个ip地址,最终坑了! 2016年7月13日...
  • FansUnion
  • FansUnion
  • 2016年07月12日 11:05
  • 1689

基于ZooKeeper的Dubbo注册中心

Zookeeper注册中心安装 建议使用dubbo-2.3.3以上版本的zookeeper注册中心客户端。Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该...
  • psiitoy
  • psiitoy
  • 2014年05月08日 11:03
  • 595

dubbo注册中心zookeeper出现异常

linux下,zookeeper安装并启动起来了 DEMO时,JAVA控制台出现: INFO 2014-03-06 09:48:41,276 (ClientCnxn.java:966) - Openi...
  • xiazou
  • xiazou
  • 2014年03月06日 10:19
  • 19378

dubbo(分布式架构)+zookeeper(注册中心)+spring(provider和consumer) 基本使用

1.前言 看到网上各种dubbo的教程,应该基本上都是从一个地方贴过来的,一看到千篇一律的provider中main方法中的system.in.read()就头疼了,随便找找都是一个样,估计都没自己...
  • jyf211314
  • jyf211314
  • 2015年07月24日 14:44
  • 9893

(三)dubbo+redis注册中心集群+redis cache(sentinel)+spring

这是demo的第三步,第二步完成了dubbo的redis注册中心的cluster,第三步接入redis cache,并且用jedis封装的sentinel做集群及主从故障切换。 tip:本次最麻烦的地...
  • mirror_young
  • mirror_young
  • 2017年07月05日 14:09
  • 239
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:修复dubbo注册中心警告bug
举报原因:
原因补充:

(最多只允许输入30个字)