dubbo相关的知识点总结
dubbo最近提交到了apache,成为了apache的孵化项目,又开始活跃起来了。就官方在git上面的说明文档和其他资料,学习总结以下dubbo的一些知识点。
.The dubbo protocol is one of many protocols the framework supports. It is built on top of the Java NIO non-blocking feature and it’s the default protocol used.
dubbo协议是众多框架支持的协议之一,它基于JAVA NIO无阻塞特性,并且这是默认使用协议。
.The framework supports multiple protocols, including dubbo, RMI, hessian, HTTP, web service, thrift, memcached and redis. Most of the protocols looks familiar, except for dubbo。
框架支持多种协议,包括dubbo、RMI、hessian、http、web service、thrift、memcached和redis。大多数的协议都是差不多的,除了dubbo。
.The dubbo protocol keeps a persistent connection between providers and consumers. The long connection and NIO non-blocking network communication result in a fairly great performance while transmitting small-scale data packets (<100K).
dubbo协议在服务提供者和消费者之间保持着一个持久化的连接。长连接和NIO无阻塞连接在小数据包(小于100KB)的网络通信中表现出相当高的性能。
.Currently, the framework supports a few load-balancing strategies:random、round-robin、least-active、consistent-hash.
当前框架支持以下几种负载均衡策略:随机(按照权重设置随机概率)、轮询(按公约后的权重设置轮询比率)、最小活跃(相同活跃是随机,慢机器收到更少的请求,最不活跃优先)、一致性哈希(相同参数的请求总数发送到同一提供者,当提供者挂掉,分摊到其他提供者)。
.Several fault tolerance strategies are supported in Dubbo, including:fail-over、fail-fast、fail-safe、fail-back、
forking.In the case of fail-over, when one provider fails, the consumer can try with some other service providers in the cluster.
dubbo支持几种容错策略:失败自动切换(发现失败,访问其他服务器)、快速失败(只调用一次,失败立即报错)、错误安全(出现异常直接忽略)、失败自动恢复(后台记录失败请求,定时重发)、并行调用(并行访问多台服务器,只要一个成功则返回)。在集群环境中,当使用错误忽略策略时,在一个服务提供者访问失败,服务消费者就会寻找其他相同的服务提供者。
补充:缺省为failover。还有一个broadcast,广播调用所有提供者,逐个调用,任意一个出错则报错。
6. dubbo是为解决哪些实际开发中遇到的问题的?
答:①当服务数量越来越多时,使用软负载均衡,减少F5硬件成本。②服务依赖关系复杂时,描述每个服务之间的关系。③服务调用量越来越大时,计算所需的服务器支撑数量。
7. 配置覆盖关系
以 timeout 为例,显示了配置的查找顺序,其它 retries, loadbalance, actives 等类似:
方法级优先,接口级次之,全局配置再次之。
如果级别一样,则消费方优先,提供方次之。
8. 结果缓存
用于加速热门数据的访问速度,有三种缓存类型:
lru(least-recently-used):基于最近最少使用原则删除多余缓存,保持最热数据被缓存。
threadlocal:当前线程缓存。
jcache: 与JSR107集成,可以桥接各种缓存。
相关参考资料:
1.http://www.baeldung.com/dubbo
2. https://blog.csdn.net/qq_17351343/article/details/76146293
3. http://dubbo.apache.org/books
dubbo相关的知识点总结的更多相关文章
- dubbo 相关面试题 有用
调用关系说明: · 0. 服务容器负责启动,加载,运行服务提供者. · 1. 服务提供者在启动时,向注册中心注册自己提供的服务. · 2. 服务消费者在启动时,向注册中心订阅自己所需的服务. · 3. ...
- dubbo 相关面试题 有用(转)
调用关系说明: · 0. 服务容器负责启动,加载,运行服务提供者. · 1. 服务提供者在启动时,向注册中心注册自己提供的服务. · 2. 服务消费者在启动时,向注册中心订阅自己所需的服务. · 3. ...
- Dubbo 总结:关于 Dubbo 的重要知识点
一 重要的概念 1.1 什么是 Dubbo? Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能.轻量级的开源Java RPC 框架,它提供了三大核心能力:面向接口的远 ...
- spring项目中dubbo相关的配置文件出现红叉的问题
近来在eclipse中导入了一个web项目,但是发现项目上有红色的叉号. 原来是spring中关于dubbo的配置文件报错了. Multiple annotations found at this l ...
- JMeter中添加dubbo相关插件异常问题解决
从网上下载了一个dubbo的插件,然后放到JMeter的/lib/ext目录下: 然后启动直接异常 发现启动不了,然后下载了一个全新的JMeter3.2将dubbo插件放到同样的目录,启动,没有问题: ...
- ksar、sar及相关内核知识点解析
关键词:sar.sadc.ksar./proc/stat./proc/cpuinfo./proc/meminfo./proc/diskstats. 在之前有简单介绍过sar/ksar,最近在使用中感觉 ...
- Dubbo相关博文整理
configServer配置中心在dubbo client和 dubbo server之间的作用 http://www.cnblogs.com/dengzy/p/5677531.html dubbo ...
- Hbase框架原理及相关的知识点理解、Hbase访问MapReduce、Hbase访问Java API、Hbase shell及Hbase性能优化总结
转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbas ...
- dubbo相关
1 面试题:Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么? 可以的,启动dubbo时,消费者会从zk拉取注册的生产者的地址接口等数据,缓存在本地.每次 ...
随机推荐
- Kotlin Reference (五) Packages
most from reference 包 源文件可以从包声明开始: package foo.bar fun baz() {} class Goo {} // ... 源文件的所有内容(如类和函数)都 ...
- Elasticsearch安装配置和测试
官方教程:https://www.elastic.co/guide/en/elasticsearch/reference/master/_installation.html 中文教程:https:// ...
- go语言学习 strings常用函数
strings包中的函数用法 参考链接http://studygolang.com/articles/88 1.strings.replace() 函数原型 func Replace(str1, ol ...
- c++语言第二次作业
一题目7-1统计学生成绩 1实验代码 #include<stdio.h> int main(void) { int i,n,grade,A,B,C,D,E; A=B=C=D=E=; sca ...
- python 除法
- erl_0021 erlang和java的内存模型比较(引用)
原文 http://deepinmind.iteye.com/blog/2030390 我读到一篇相当相当有趣的关于Erlang VM内存管理策略的文章.它是Jesper Wilhelmsson写的 ...
- java project 项目在 linux 下面部署方法
1.前提是安装好了响应的开发和部署环境,例如jdk. 2.在Linux下运行可执行Jar包,首先准备jar包,一般的编译工具Eclipse,jbuilder都提供export功能,可以生成jar包. ...
- LOJ2362. 「NOIP2016」蚯蚓【单调队列】
LINK 思路 良心来说这题还挺思维的 我没看题解也不知道要这样维护 把每次斩断的点分别放进两个队列里面 因为要维护增长,所以可以让新进队的节点来一个负增长? 是不是就好了? 然后很容易发现因为在原始 ...
- VC中键盘键的对应关系
转载:VC中如何响应键盘和鼠标事件 VC 中用 KeyPress 表示键盘响应的所有事件,包括 OnKeyDown 事件(键按下). OnKeyUp 事件(键按下后弹起)和 OnKeyPress 事件 ...
- linux 下执行python.py 无效解决方案
python 下写linux执行脚本 单独执行 python /home/xx.py 运行正常,但是在linux下 crotch -l 发现有任务运行: 30 0 * * * python /hom ...