- 浏览: 212575 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
hus20120405:
很不错,我运行起来了
log4jdbc日志框架介绍 -
Roshomon:
牛叉 找了很多解决方案 你的OK了
plsql ora-12154 TNS 无法处理服务名 -
ackley:
赞!谢谢!
Cannot access NLS data files or invalid ...
在配置过程中遇到两个问题:
1. 报错: object is not an instance of declaring class
这是因为接口类没有暴露方法,导致服务没有实例化
2. 报错:java.lang.RuntimeException: You must use at least one, but no more than one http method annotation on
这就是一开始没有把rest相关的annotation写到接口上,导致采用dubbo客户端访问的时候报错。
3. 报错:java.lang.IllegalStateException: urls to invokers error .invokerUrls.size :1, invoker.size :0.
在dubbo-admin控制台中禁用服务后, 客户端调用提示这个错误. 对服务禁用后只会影响dubbo客户端访问,不会影响普通的http访问。
4. 报错:Failed to invoke the method search in the service cn.gov.zjport.dubborest.service.rest.RestDemoService. No provider available for the service
在dubbo-admin控制台中禁用消费端后, 客户端调用提示这个错误.
5. 提示:main INFO wrapper.MockClusterInvoker: [DUBBO] force-mock: search force-mock enabled , url : zookeeper://192.168.3.140:2181/com.alibaba.dubbo.registry.RegistryService?anyhost=true&application=dubborest-test-consumer&check=false&connections=100&dubbo=2.8.4-SNAPSHOT&extension=com.alibaba.dubbo.rpc.protocol.rest.support.LoggingFilter&generic=false&interface=cn.gov.zjport.dubborest.service.rest.RestDemoService&methods=post,get,search&mock=force%3Areturn+null&organization=zjport&owner=zhenggm&pid=11280&server=servlet&side=consumer&timeout=2000×tamp=1473471180383&validation=true, dubbo version: 2.8.4-SNAPSHOT, current host: 192.168.180.15
null
在dubbo-admin控制台中屏蔽消费端后,不进行远程调用直接返回null,客户端调用提示这个信息.
6. 报错:zookeeper connect timeout 5000
zookeeper客户端版本与服务端不一致,替换zookeeper客户端zookeeper.jar
7. 报 protocol not support rest
这是传统rest调用方式改为dubbo客户端方式时发生的,主要是因为客户端缺少rest相关包,将javax.ws.rs-api 等包放上就可以了。
8. rest 客户端调用乱码
将服务端的@Produces 中加入charset=utf-8"
9.服务端启动报错:java.lang.NoSuchMethodError: javax.ws.rs.ClientErrorException.validate
这是因为类包冲突,经过反编译发现, ClientErrorException继承自WebApplicationException, 而工程中有好几个WebApplicationException来自不同的jar包,其中个别WebApplicationException是没有validate方法的。在我的工程中是因为项目中依赖的不必要的jersey的包,与dubbo使用的resteasy包冲突,将jersey的包删除即可。
10.dubbo暴露的rest服务接口类中方法都必须带上annotation,不能把不暴露的方法放在暴露的服务接口中,否则客户端启动会提示urls to invokers error .invokerUrls.size :1, invoker.size :0.
11.部署在linux服务器上,服务自注册的地址与服务器地址不一致。
可能是hosts ip设置错误,可检查/etc/sysconfig/network 中的HOSTNAME 与 /etc/hosts对应的${HOSTNAME}对应的ip地址是否为正确的地址。
12. 客户端连不上服务,connect time out.
有可能是集成外部的应用服务器如tomcat,但是发布的dubbo服务端口与tomcat端口不一致,应修改dubbo 服务端口
13. 使用rest协议时,客户端提示找不到服务,使用dubbo协议又是好的
注意rest相关的annotation标签要标注在接口上,而不是标注在实现类上,客户端是根据接口类进行解析的。
1. 报错: object is not an instance of declaring class
这是因为接口类没有暴露方法,导致服务没有实例化
2. 报错:java.lang.RuntimeException: You must use at least one, but no more than one http method annotation on
这就是一开始没有把rest相关的annotation写到接口上,导致采用dubbo客户端访问的时候报错。
3. 报错:java.lang.IllegalStateException: urls to invokers error .invokerUrls.size :1, invoker.size :0.
在dubbo-admin控制台中禁用服务后, 客户端调用提示这个错误. 对服务禁用后只会影响dubbo客户端访问,不会影响普通的http访问。
4. 报错:Failed to invoke the method search in the service cn.gov.zjport.dubborest.service.rest.RestDemoService. No provider available for the service
在dubbo-admin控制台中禁用消费端后, 客户端调用提示这个错误.
5. 提示:main INFO wrapper.MockClusterInvoker: [DUBBO] force-mock: search force-mock enabled , url : zookeeper://192.168.3.140:2181/com.alibaba.dubbo.registry.RegistryService?anyhost=true&application=dubborest-test-consumer&check=false&connections=100&dubbo=2.8.4-SNAPSHOT&extension=com.alibaba.dubbo.rpc.protocol.rest.support.LoggingFilter&generic=false&interface=cn.gov.zjport.dubborest.service.rest.RestDemoService&methods=post,get,search&mock=force%3Areturn+null&organization=zjport&owner=zhenggm&pid=11280&server=servlet&side=consumer&timeout=2000×tamp=1473471180383&validation=true, dubbo version: 2.8.4-SNAPSHOT, current host: 192.168.180.15
null
在dubbo-admin控制台中屏蔽消费端后,不进行远程调用直接返回null,客户端调用提示这个信息.
6. 报错:zookeeper connect timeout 5000
zookeeper客户端版本与服务端不一致,替换zookeeper客户端zookeeper.jar
7. 报 protocol not support rest
这是传统rest调用方式改为dubbo客户端方式时发生的,主要是因为客户端缺少rest相关包,将javax.ws.rs-api 等包放上就可以了。
8. rest 客户端调用乱码
将服务端的@Produces 中加入charset=utf-8"
9.服务端启动报错:java.lang.NoSuchMethodError: javax.ws.rs.ClientErrorException.validate
这是因为类包冲突,经过反编译发现, ClientErrorException继承自WebApplicationException, 而工程中有好几个WebApplicationException来自不同的jar包,其中个别WebApplicationException是没有validate方法的。在我的工程中是因为项目中依赖的不必要的jersey的包,与dubbo使用的resteasy包冲突,将jersey的包删除即可。
10.dubbo暴露的rest服务接口类中方法都必须带上annotation,不能把不暴露的方法放在暴露的服务接口中,否则客户端启动会提示urls to invokers error .invokerUrls.size :1, invoker.size :0.
11.部署在linux服务器上,服务自注册的地址与服务器地址不一致。
可能是hosts ip设置错误,可检查/etc/sysconfig/network 中的HOSTNAME 与 /etc/hosts对应的${HOSTNAME}对应的ip地址是否为正确的地址。
12. 客户端连不上服务,connect time out.
有可能是集成外部的应用服务器如tomcat,但是发布的dubbo服务端口与tomcat端口不一致,应修改dubbo 服务端口
13. 使用rest协议时,客户端提示找不到服务,使用dubbo协议又是好的
注意rest相关的annotation标签要标注在接口上,而不是标注在实现类上,客户端是根据接口类进行解析的。
发表评论
文章已被作者锁定,不允许评论。
-
zookeeper docker 集群安装
2022-10-14 17:18 1371. 下载镜像 docker pull docker.io/z ... -
Kafka学习笔记【三】-JAVA调用示例
2018-05-29 08:35 5691. pom.xml <dependency> ... -
Kafka学习笔记【二】-安装
2018-05-24 08:20 354kafka的安装如下: 一、准备环境 1) 三台服务器 ... -
Kafka学习笔记【一】-原理
2018-05-18 09:23 249一、kafka的重要概念 1. kafka 分为 Produ ... -
rabbitMQ学习笔记【三】-haproxy部署 原创
2018-04-11 16:11 374一、下载 https://fossies.org/lin ... -
rabbitMQ学习笔记【二】-集群部署 原创
2018-04-03 19:40 397一、准备工作 三台机器hosts: 192.168.3 ... -
rabbitMQ学习笔记【一】-单机部署 原创
2018-03-19 16:04 405公司对外接入需要支持MQ,最终选定rabbitMQ.本文 ... -
HttpClient 学习笔记【原创】
2017-09-07 19:28 1877HttpClient 某些方法的作用梳理。本文的测试基于htt ... -
关于dubbo的思考【原创】
2016-09-21 08:23 1320最近在看dubbo的文档,有些内容结合自己的思考记录一下 1. ... -
dubbo http webservice 服务学习笔记【原创】
2016-09-11 19:12 6475学习了 dubbo rest服务之后,再使用dubbo htt ... -
dubbo rest 服务学习笔记(二)【原创】
2016-09-09 19:21 1382采用dubbo客户端访问dubbo发布的rest服务,接上一篇 ... -
dubbo rest 服务学习笔记(一)【原创】
2016-09-09 19:07 6093dubbo是很好的服务治理工具,包含了注册,路由,监控 ... -
RocketMq数据处理
2016-06-27 08:58 612这篇讲实践中数据丢失、顺序幂等处理、性能压测,有时间再写 -
RocketMq学习笔记(2)【原创】
2016-06-27 08:55 1129前一篇文章http://zhenggm.i ... -
MS MQ 使用实践【原创】
2016-06-26 14:58 7731. 参照百度经验http://jingyan.baidu.c ... -
RocketMq学习笔记【原创】
2016-06-23 14:05 1581前段时间在实施分布式数据库的过程中,使用过rocketMQ, ... -
rest的调用 java 示例代码【原创】
2016-06-20 15:35 11441. 服务端示例代码(如何搭建rest服务,请看上一篇) ... -
jersey2 与 spring4 整合实践【原创】
2016-06-13 15:35 4975前几年用过jeysey,那都是1.x版本的,jersey2有很 ... -
java nio入门
2010-03-04 17:22 952首先了解下所谓的java nio是个什么东西! ... -
spring http invoker学习笔记
2010-01-04 16:58 3685概念 Spring HTTP invoker是spring框架 ...
相关推荐
综上所述,Dubbo 提供的 REST 服务接口使得服务提供者能够以 RESTful 的方式暴露服务,极大地扩展了 Dubbo 的应用场景,使其在微服务架构中更加灵活。通过合理的配置和服务实现,我们可以轻松地在 Dubbo 系统中集成 ...
总的来说,这三个jar包共同构建了Dubbo支持REST和Web Services的能力,让开发者能够在Dubbo服务框架下灵活地选择适合自己的通信协议,增强了Dubbo在分布式系统中的适用性。在实际开发中,可以根据项目需求,选择合适...
通过这个示例,开发者可以学习到如何在Dubbo环境中构建RESTful API,以及如何利用Dubbo的服务治理能力进行分布式服务调用。这不仅简化了跨语言调用的复杂性,也提升了系统的可扩展性和互操作性。
【Dubbo学习笔记】 Dubbo是一款高性能、轻量级的Java RPC框架,它旨在提供面向接口的远程方法调用、智能容错与负载均衡、服务自动注册与发现等核心功能,帮助开发者构建分布式服务架构。以下是对Dubbo基础知识、...
3. **自动发现**:Dubbo通过注册中心(如Zookeeper、Eureka等)实现服务提供者和消费者之间的动态服务发现,服务消费者无需硬编码服务提供者的地址,只需要知道服务接口,即可找到并调用服务。 【Dubbo能做什么】 ...
Dubbo之《尚硅谷》学习笔记
- **协议(Protocol)**: 服务交互的通信协议,如Dubbo默认的dubbo协议,HTTP,REST等。 - **监控中心(Monitor)**: 统计服务的调用次数、调用时间、失败比例等,用于故障排查和性能优化。 2. **Zookeeper在...
Dubbo分布式服务架构,对于研究大型Web服务器的并发技术的同学们有帮助。
dubbo学习笔记.doc
总的来说,这个项目旨在帮助开发者将传统的Dubbo服务与现代微服务架构融合,使得非Spring Cloud环境下的服务也能通过REST接口被Spring Cloud生态中的应用调用,同时利用Eureka实现服务的统一管理和发现。通过这种...
通过这些文档的学习,你将能够理解Dubbo如何实现服务间的透明调用,掌握如何利用Dubbo进行服务治理,以及如何根据项目需求进行服务拆分和框架扩展。同时,你也能够了解到在实际项目中如何优化网络通讯,提高系统的...
【Dubbo阅读笔记】 在深入理解Dubbo框架的过程中,我们首先需要了解其核心概念和服务模型。Dubbo是一款高性能、轻量级的Java RPC框架,它致力于简化分布式服务开发,为服务提供者(Provider)和服务消费者...
- 发送预警:使用JavaMail API或者第三方库(如Spring Mail)发送邮件,将服务下线的信息实时通知给相关人员,以便快速定位问题并恢复服务。 4. **代码0入侵**: - 这意味着监控系统是独立于Dubbo服务的,不需要...
《Dubbo学习笔记详解》 Dubbo,作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,已经在Java开发者中广受欢迎。它主要应用于分布式系统中的服务调用,提供服务注册、服务发现、负载均衡、容错处理等核心功能,...
例如,使用`@RestService`注解来标记服务类,这样`Dubbo`就会自动创建对应的`REST`服务。 ```java @Service(interface = DemoService.class) @RestService(path = "/demo") public class DemoServiceImpl ...
《MyDubbo:Dubbo源码学习笔记》 在Java开发领域,Dubbo是一个非常知名的分布式服务框架,它由阿里巴巴开源并广泛应用于大型企业系统。本篇笔记将深入探讨Dubbo的核心概念、工作原理以及源码解析,帮助开发者更好地...
本实例将深入探讨如何利用Dubbo进行服务的拆分,通过"用户服务"(dubbo-user)和"订单服务"(dubbo-order)两个具体的示例,揭示服务拆分的实施步骤和关键点。 1. 服务拆分原则 服务拆分的目标是提高系统的可扩展性...
《Dubbo分布式服务框架开发者学习文档》是一份深入解析Dubbo技术体系的重要资料,它涵盖了Dubbo的核心功能和实现机制,对于理解并掌握这个流行的Java分布式服务框架具有极高的价值。Dubbo,作为阿里巴巴开源的一款高...
通过深入学习和实践Dubbo源码,开发者不仅可以更好地理解Dubbo的工作原理,还能在实际项目中灵活运用,解决各种复杂的分布式服务问题。Dubbo的源码阅读也是一个不断提升自身技术深度的过程,有助于成长为更优秀的...