文档章节

Dubbo学习(一)

清风傲剑
 清风傲剑
发布于 2014/11/13 11:12
字数 860
阅读 220
收藏 0

Dubbo心得之what,why

一.概述

个人觉得学习新技术首先就要知道它是做什么的?有什么样的作用?我们为什么要使用它,它对于我们开发来说有什么好处,所以这就是要说的what?why?

 

二.Dubbo是什么——what

随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。

以上是官网文档的解释,对于目前我的理解就是dubbo是一款对RPC SOA框架进行服务治理的管理型框架。

 

以下是它的架构图:

 

它提供了对消费者(consumer)以及提供者(provider)的统一管理与监听

三.Dubbo需求与优点——why

官网文档上有一张很详细的图,在此我就不贴了,刚开始阅读发现不理解,通过这几天的学习并且做一些实验以及demo后,才慢慢理解dubbo到底有什么样的作用。

个人通俗总结:

  1. 针对于当前很多互联网公司产品需求不断变更,产品升级优化重构势在必行,所以对外提供的api服务越来越多也越来越复杂,众多URL的配置管理非常困难(尤其是使用像SpringMVC等全注解型MVC框架),一个controller中配置了无数的requestMapping,对于初接触项目的菜鸟来说费时费力,所以dubbo提供了注册中心,通过后台监控,方便了产品的管理。

  2. 硬件负载均衡的单点压力,在分布式服务架构下,实现服务器负载均衡能使整个系统不会由于某台服务器挂而全面崩溃。Dubbo提供了软负载均衡(也就是软件负载均衡)以及failover(故障转移),减少对硬件负载均衡的压力以及减少成本。

  3. 针对官网文档第二条,目前还不知道dubbo提供的自动服务依赖图,待继续学习。

  4. 当前很多互联网公司服务量越来越大,日均PV VV UV很大,如何了解内部提供的服务需要多少机器支撑?何时需要添加机器?dubbo为我们提供了便捷。在这几天的实验中发现,dubbo通过注册中心可以监听所有提供者 消费者的情况,根据不同情况调整负载均衡策略,分配不同权重等等。还能统计每日访问量以及各种数据,方便开发人员了解整个系统的运行情况。

 

 

本文主要介绍dubbo的特性,功能等,接下来会依次在介绍dubbo的用法与实现

 

                                         ————坚持不懈,每天进步一点点

 

© 著作权归作者所有

共有 人打赏支持
清风傲剑
粉丝 30
博文 75
码字总数 40365
作品 0
蚌埠
程序员
私信 提问
dubbo 视频教程

深度解剖dubbo源码 为什么要学习dubbo 源码? 1.如果你想深入学习SOA的微服务架构设计,那通过读dubbo源码是一条非常不错的通往SOA架构设计之路,毕竟SOA的服务治理就是dubbo首先提出来的,比...

qq594295b3c16b8
2017/06/16
0
0
动手学dubbo之Container与SPI

在动手学dubbo之初体验一文中我们了解了dubbo的架构,接下来的几篇文章我会根据阅读Quick Start里面的demo源码来深入学习dubbo的实现。这一篇主要学习Container的原理、实现和作用。 一、从启...

ginobefun
2017/07/13
0
0
Dubbo 源码分析(一)一环境搭建

环境搭建的步骤有哪些 依赖外部的环境 使用的开发工具 源码的拉取 结构大致介绍 1 依赖的外部环境 安装JDK 安装Git 安装maven 这边我们就不介绍怎么安装这些外部环境了,大家自行从安装这些外...

小刀爱编程
10/19
0
0
dubbo初学时想了解的几个问题

我初接触dubbo,想弄明白几个问题。 1、dubbo是做什么用的?没有dubbo是怎么样的,有dubbo会有什么样的变化? 这个问题我自己试回答一下看对不对。我看一些教程用dubbo就是用eclipse做两个工...

liaoqifan
2016/03/20
2.2K
2
微服务资源springboot、springcloud、docker、dubbo项目实战等倾心分享

精彩内容 java实战练习项目教程 全网最全电子图书分享 你所需要的大数据视频教程 java学习视频教程及源码 今天又是周末,还是想给大家送一些福利,因为最近一直有小伙伴问我要springboot等微...

公众号_好好学java
08/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊storm的AggregateProcessor的execute及finishBatch方法

序 本文主要研究一下storm的AggregateProcessor的execute及finishBatch方法 实例 TridentTopology topology = new TridentTopology(); topology.newStream("spout1", spout......

go4it
今天
3
0
大数据教程(7.5)hadoop中内置rpc框架的使用教程

博主上一篇博客分享了hadoop客户端java API的使用,本章节带领小伙伴们一起来体验下hadoop的内置rpc框架。首先,由于hadoop的内置rpc框架的设计目的是为了内部的组件提供rpc访问的功能,并不...

em_aaron
今天
4
0
CentOS7+git+github创建Python开发环境

1.准备CentOS7 (1)下载VMware Workstation https://pan.baidu.com/s/1miFU8mk (2)下载CentOS7镜像 https://mirrors.aliyun.com/centos/ (3)安装CentOS7系统 http://blog.51cto.com/fengyuns......

枫叶云
昨天
3
0
利用ibeetl 实现selectpicker 的三级联动

1. js 直接写在html页面上面,ibeetl 就可以动态地利用后台传上来的model List ,不需要每次点击都要ajax请求后台 2. 使用selectpicker 的时候,除了对selecct option的动态处理后,还需要 $("#...

donald121
昨天
3
0
Android SELinux avc dennied权限问题解决方法

1. 概述 SELinux是Google从android 5.0开始,强制引入的一套非常严格的权限管理机制,主要用于增强系统的安全性。 然而,在开发中,我们经常会遇到由于SELinux造成的各种权限不足,即使拥有“...

TreasureWe
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部