![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dubbo
文章平均质量分 81
xiaomin_____
努力~~
展开
-
bubbo 入门
<!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves/> <w:TrackFormatting/> &原创 2014-12-25 18:05:13 · 463 阅读 · 0 评论 -
dubbo学习过程、使用经验分享及实现原理简单介绍
一、前言部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下。整理这篇文章差不多花了两天半时间,请尊重劳动成果,如转载请注明出处http://blog.csdn.net/hzzhoushaoyu/article/details/43273099二、什么是dubb...原创 2015-09-02 00:13:40 · 108 阅读 · 0 评论 -
Dubbo 管理控制台
首先需要准备Dubbo-Admin管理控制台程序,本人是通过项目的形式将控制台导入Eclipse中,通过Eclipse的方式来启动tomcat服务.当然也可以直接将程序的war包放入Tomcat的webapps中,直接启动tomcat也可以. 如下图: 接下来我们需要配置一下dubbo.properties的属性 ...原创 2015-09-13 00:03:31 · 94 阅读 · 0 评论 -
dubbo -搭建监控中心
紧接上一篇,继续我的dubbo的学习之旅1、下载监控中心dubbo服务安装包下载地址:http://code.alibabatech.com/mvn/releases/com/alibaba/dubbo-monitor-simple/2.4.1/dubbo-monitor-simple-2.4.1-assembly.tar.gz 注:此地址,可能下载不了,我是群共享文件里,...原创 2015-09-13 00:03:55 · 200 阅读 · 0 评论 -
Dubbo Main启动方式浅析
服务容器是一个standalone的启动程序,因为后台服务不需要Tomcat或JBoss等Web容器的功能,如果硬要用Web容器去加载服务提供方,增加复杂性,也浪费资源。 服务容器只是一个简单的Main方法,并加载一个简单的Spring容器,用于暴露服务。 服务容器的加载内容可以扩展,内置了spring, jetty, log4j等加载,可通过Container扩展点进行扩展,参见:Conta...原创 2015-09-13 00:04:23 · 388 阅读 · 0 评论 -
dubbo 分布式事务
我觉得事务的管理不应该属于Dubbo框架, Dubbo只需实现可被事务管理即可, 像JDBC和JMS都是可被事务管理的分布式资源, Dubbo只要实现相同的可被事务管理的行为,比如可以回滚, 其它事务的调度,都应该由专门的事务管理器实现。 在Java中,分布式事务主要的规范是JTA/XA, 其中:JTA是Java的事务管理器规范, XA是工业标准的X/Open CAE规范,可被两阶段提交及回滚...原创 2015-09-24 00:38:52 · 204 阅读 · 0 评论 -
Spring , duboo 注意事项
1、dubbo 注解和xml配置注意事项@Service(version = "1.0.0")----------------------------------------------------<dubbo:service version="1.0.0" interface="com.artbulb.search.rpc.MultiEnterService" ref="...原创 2015-10-30 15:46:07 · 87 阅读 · 0 评论 -
Dubbo源码分析(三):Dubbo之服务端(Service)
如上图所示的Dubbo的暴露服务的过程,不难看出它也和消费者端很像,也需要一个像reference的对象来维护service关联的所有对象及其属性,这里的reference就是provider。由于ServiceBean实现了 InitializingBean接口,所有在Spring实例化这个bean后会调用接口方法afterPropertiesSet:[j...原创 2015-10-30 15:55:15 · 145 阅读 · 0 评论 -
dubbo service export过程
1. AnnotationBean注册AnnotationBean 的注册通过xml配置. Spring通过读取解析xml,而获得AnnotationBean. AnnotationBean实例化了BeanFactoryPostProcessor,所以在BeanFactory初始化后,会调用 AnnotationBean. postProcessBeanFactory. Annotatio...原创 2015-11-01 12:56:01 · 99 阅读 · 0 评论 -
淘宝SOA框架dubbo学习--异步调用
直接上代码:1、服务提供端及客户端共享代码?12345package com.alibaba.dubbo.demo; public interface DemoService2 { Person getPersion(String name);} ?12...原创 2015-11-04 13:58:20 · 107 阅读 · 0 评论 -
谨慎DUBBO超时时间和重试机制
DUBBO消费端设置额超时时间不能随心所欲,需要根据业务实际情况来设定,如果设置的时间太短,导致复杂业务本来就需要很长时间完成,导致在设定的超时时间内无法完成正常的业务处理。如果消费端达到超时时间,那么dubbo会进行重试机制(如果配置了dubbo.reference.retries>1),这种情况其实给服务提供端带来莫名的压力,而压力是正常值*dubbo.reference.retri...原创 2015-11-27 21:33:39 · 1406 阅读 · 0 评论 -
dubbo 机器多IP问题的解决
承载dubbo服务的机器多IP时,需要指定dubbo服务需要绑定到的IP(dubbo.protocol.host),确保登记到注册中心的提供者或者消费者的IP之间可以互相ping通此IP与具体环境有关,上生产环境时,需要进行增量配置 =========================绑定IP,DUBBO 怎么做的 通常绑定本机ip地址 一般如下 Ja...原创 2016-11-16 15:23:36 · 1895 阅读 · 0 评论 -
docker dubbo hostname
因为要部署 dubbo 服务到 docker 集群,在部署时遇到一个问题,就是dubbo会去获取 /etc/hosts 下面的 hostname 对应的IP地址作为 zookeeper 注册中心注册的 IP 地址,由于 docker 容器的 IP 是 172.17.0.2, 那注册到 zookeeper 的 IP 也就是 172.17.0.2 了。那问题就来了,172.17.0.2 是 do...原创 2017-01-12 16:39:14 · 274 阅读 · 0 评论 -
dubbo 接口 序列化问题
java.lang.ClassNotFoundException: com.tude.goods.po.TudeGoodshset>>>>>>>>>>>>>calss=====class java.util.HashMapdubbo 接口 public <T> T hget(原创 2017-06-16 15:29:32 · 530 阅读 · 0 评论 -
dubbo线程池优化
dubbo通过配置threadpool来配置线程池的类型: fixed 固定大小线程池,启动时建立线程,不关闭,一直持有(缺省) cached 缓存线程池,空闲一分钟自动删除,需要时重建 limited 可伸缩线程池,但池中的线程数只会增长不会收缩(为避免收缩时突然来了大流量引起的性能问题) 默认是固定大小线程池,如果服务消费者太多...原创 2017-07-19 11:17:50 · 522 阅读 · 0 评论 -
Dubbo之旅--集群容错和负载均衡
当我们的系统中用到Dubbo的集群环境,因为各种原因在集群调用失败时,Dubbo提供了多种容错方案,缺省为failover重试。 Dubbo的集群容错在这里想说说他是因为我们实际的项目中出现了此类的问题,因为依赖的第三方项目出现异常,导致dubbo调用超时,此时使用的是默认的集群容错方式,而配置的reties='3',这样前段系统连续掉用了三次服务,结果可想而知....原创 2017-08-28 15:15:24 · 92 阅读 · 0 评论 -
CentOS7下Docker Storage Pool扩容
前言:在docker刚起步的时候,RHEL的内核并不支持AUFS作为docker的后端存储而将移植工作推迟。后来,红帽和docker合作开发一种基于Device Mapper技术的后端存储框架,也就是现在的device-mapper插件。问题systemctl start docker.service 提示启动失败。分析使用命令查看docker启动日志:➜ # journa...原创 2017-02-15 14:57:05 · 110 阅读 · 0 评论 -
实现DUBBO服务环境隔离
实现DUBBO服务环境隔离欢迎加入DUBBO交流群:259566260要说这个话题之前先讲讲之所以要做这个的需求。一般选择DUBBO来进行服务管理,都是在分布式应用的前提下,涉及到多个子系统之间的调用,DUBBO所做的事情就是维护各个子系统暴露的接口和自动发现对应接口的远程地址从而实现分布式RPC服务管理。有了上面前提之后,那么在项目开发和测试过程中涉及到一个问题,就是接口...原创 2015-09-02 00:12:35 · 337 阅读 · 0 评论 -
Dubbo zookeeper 初探
1.zookeeperhttp://zookeeper.apache.org/ 官网下载,然后安装启动时,需要将 zoo_sample.cfg 改成 zoo.cfg [java] view plaincopy# The number of milliseconds of each tick tickTime=2000 # The n...原创 2015-08-16 21:08:11 · 77 阅读 · 0 评论 -
Dubbo zookeeper 初探
转:http://blog.csdn.net/u011270461/article/details/12144623建议参考资料: http://blog.csdn.net/lin_fs/article/details/7395307http://blog.csdn.net/goliathray/article/details/8565801http://zy1164947...原创 2014-12-25 18:06:18 · 74 阅读 · 0 评论 -
Dubbo实现的源码分析
1. Dubbo概述Dubbo是阿里巴巴开源出来的一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及作为SOA服务治理的方案。它的核心功能包括:#remoting:远程通讯基础,提供对多种NIO框架抽象封装,包括“同步转异步”和“请求-响应”模式的信息交换方式。#Cluster: 服务框架核心,提供基于接口方法的远程过程调用,包括多协议支持,并提供...原创 2014-12-25 18:18:00 · 90 阅读 · 0 评论 -
Dubbo架构设计详解
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容,详见后面描述...原创 2014-12-26 16:15:19 · 73 阅读 · 0 评论 -
dubbo源码分析系列(1)扩展机制的实现
2 SPI扩展机制站在一个框架作者的角度来说,定义一个接口,自己默认给出几个接口的实现类,同时允许框架的使用者也能够自定义接口的实现。现在一个简单的问题就是:如何优雅的根据一个接口来获取该接口的所有实现类呢?这就需要引出java的SPI机制了 2.1 SPI介绍与demo这些内容就不再多说了,网上搜一下,一大堆,具体可以参考这篇博客Java SPI机制简介;我这里给出一...原创 2016-04-20 10:35:03 · 98 阅读 · 0 评论 -
dubbo源码分析系列(4)dubbo通信设计
2 NIO通信层的抽象目前dubbo已经集成的有netty、mina、grizzly。先来通过案例简单了解下netty、mina编程(grizzly没有了解过) 2.1 netty和mina的简单案例netty原本是jboss开发的,后来单独出来了,所以会有两种版本就是org.jboss.netty和io.netty两种包类型的,而dubbo内置的是前者。目前还不是很熟悉,可能...原创 2016-04-20 10:35:53 · 254 阅读 · 0 评论 -
dubbo源码分析系列(2)服务的发布
2 dubbo与spring接入dubbo的官方文档也说明了,dubbo可以不依赖任何Spring。这一块日后再详细说明,目前先介绍dubbo与Spring的集成。与spring的集成是基于Spring的Schema扩展进行加载 2.1 Spring对外留出的扩展用过Spring就知道可以在xml文件中进行如下配置:<context:component-scan ba...原创 2016-04-20 10:36:10 · 87 阅读 · 0 评论 -
dubbo源码分析系列(3)服务的引用
2 服务引用案例介绍先看一个简单的客户端引用服务的例子,dubbo配置如下:<dubbo:application name="consumer-of-helloService" /><dubbo:registry protocol="zookeeper" address="127.0.0.1:2181" /><dubbo:referen...原创 2016-04-20 10:36:55 · 96 阅读 · 0 评论 -
Dubbo源码分析1
这是本人对于Dubbo源码分析的系列一,没有 说明Dubbo是什么,不清楚请先了解,此处只是为了给自己做个笔记,也给正在学习Dubbo的同学一些借鉴,后期会继续奉上所有关于Dubbo的逻辑分 析,包括Dubbo简介、初始化与请求细节、注册中心、监控中心、治理中心等(由于Dubbo本身的文档已经非常详细了,这里只是重构)。 A. Dubbo初始化、请求处理过程:(此处不涉及非常细节处,均以dub...原创 2016-04-20 10:37:57 · 127 阅读 · 0 评论 -
给dubbo接口添加白名单——dubbo Filter的使用
在开发中,有时候需要限制访问的权限,白名单就是一种方法。对于Java Web应用,Spring的拦截器可以拦截Web接口的调用;而对于dubbo接口,Spring的拦截器就不管用了。dubbo提供了Filter扩展,可以通过自定义Filter来实现这个功能。本文通过一个事例来演示如何实现dubbo接口的IP白名单。扩展Filter 实现com.alibaba.dubbo.rpc....原创 2016-04-21 10:34:17 · 665 阅读 · 0 评论 -
dubbo服务者配置说明
<?xml version="1.0" encoding="UTF-8"?><!-- - Copyright 1999-2011 Alibaba Group. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this fil...原创 2016-05-03 16:48:19 · 120 阅读 · 0 评论 -
dubbo(provider,consumer)点到点直连配置
1.服务端接口配置(providr样例)applicationContext-dubbo-smk.xml:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibab...原创 2016-06-30 22:03:48 · 111 阅读 · 0 评论 -
dubbo URL
URL所有扩展点参数都包含URL参数,URL作为上下文信息贯穿整个扩展点设计体系。URL采用标准格式:protocol://username:password@host:port/path?key=value&key=value日志如果不可恢复或需要报警,打印ERROR日志。如果可恢复异常,或瞬时的状态不一致,打印WARN日志。正常运行时的中间状态提示,打...原创 2016-06-30 22:06:21 · 375 阅读 · 0 评论 -
dubbo
扩展点配置来源:Dubbo的扩展点加载从JDK标准的SPI(Service Provider Interface)扩展点发现机制加强而来。Dubbo改进了JDK标准的SPI的以下问题:JDK标准的SPI会一次性实例化扩展点所有实现,如果有扩展实现初始化很耗时,但如果没用上也加载,会很浪费资源。如果扩展点加载失败,连扩展点的名称都拿不到了。比如:JDK标准的ScriptEn...原创 2016-07-02 09:42:00 · 110 阅读 · 0 评论 -
dubbo泛化处理
关于泛化,dubbo文档这样描述的。http://dubbo.io/User+Guide-zh.htm#UserGuide-zh-%E6%B3%9B%E5%8C%96%E5%BC%95%E7%94%A8泛接口调用方式主要用于客户端没有API接口及模型类元的情况,参数及返回值中的所有POJO均用Map表示,通常用于框架集成,比如:实现一个通用的服务测试框架,可通过GenericSer...原创 2016-07-09 07:53:58 · 146 阅读 · 0 评论 -
dubbo 协议分析,Hessian序列化分析
Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。 缺省协议,使用基于netty3.2.2+hessian3.2.1交互。 连接个数:单连接 连接方式:长连接 传输协议:TCP 传输方式:NIO异步传输 序列化:Hessian二进制序列化 适用范围:传入传出参数数...原创 2015-08-13 11:26:22 · 184 阅读 · 0 评论 -
基于dubbo框架下的RPC通讯协议性能测试
一、前言 Dubbo RPC服务框架支持丰富的传输协议、序列化方式等通讯相关的配置和扩展。dubbo执行一次RPC请求的过程大致如下:消费者(Consumer)向注册中心(Registry)执行RPC请求,注册中心分配服务URL并路由到具体服务提供方(Provider),消费者和服务提供方建立网络连接,服务提供方在本地创建连接池对象并提供远程服务,对于长连接类型协议(如dubbo协议)将...原创 2015-08-13 11:27:39 · 101 阅读 · 0 评论 -
分享Docker监控体系(Kubernetes Mesos监控)
PS:监控系统是整个运维环节,乃至整个产品生命周期中最重要的一环。监控的价值与体系在运维体系中, 监控是非常重要的组成部分。通过监控可以实时掌握系统运行的状态,对故障的提前预警,历史状态的回放等,还可以通过监控数据为系统的容量规划提供辅助决策,为系统性能优化提供真实的用户行为和体验。这几年互联网业务的迅速发展,用户对系统的要求也越来越高,而做好监控成能为系统保驾护航,能有效提高系统的...原创 2017-02-17 13:42:34 · 249 阅读 · 0 评论