作者:匿名用户
链接:https://www.zhihu.com/question/39560697/answer/187538165
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

首先现在Netty/Grizzly/xio/Mina那么成熟,基于NIO框架写个RPC通讯框架也不是那么复杂么。 其次Dubbo应该是定位为RPC框架, 在Remoting层支持netty,mina,http这些(见下图),个人觉的这样得扩展性灵活性是中看不中用。

<img src="https://pic2.zhimg.com/v2-113e95a484a28836662e5d4b2ff9a8b1_b.png" data-rawwidth="845" data-rawheight="494" class="origin_image zh-lightbox-thumb" width="845" data-original="https://pic2.zhimg.com/v2-113e95a484a28836662e5d4b2ff9a8b1_r.png">

下面表述下个人的看法。

  1. RPC层面不在于扩展性,而在于性能的高低,dubbo协议设计是比较重,无论是速度还是网络包大小都是比较高的。
  2. SOA/微服务的服务框架除了RPC最基础的能力外, 最重要最复杂的是为线上运维升级提供便利(也就是基础服务组件应该与容器集成,同时与业务代码的发布升级做独立),同时为开发提供隔离能力(如果没有解决过类冲突问题的开发可能很难体会到这一点)。
  3. 最后说一重要的点。能够设计研发支持10w/100w级别的服务地址中心是有点技术挑战, 无论是zk还是dubbo提供的registry都只能支持千级别的长连接。 在阿里要面向10w级以上的长连接地址管理是要慎重选择,选择经得起考验的服务注册中心。

如果是体量没有阿里这么大,在运维或者性能或者地址服务上要求没那么高,dubbo是最好的选择。当然一定要安利企业级分布式应用服务 EDAS产品,具备高性能和稳定的服务节点支持,同时也支持dubbo的使用方式。

针对上面吐槽HSF的一回答,没有一个又很“轻”,又能满足在架构和运维治理上都爽的“银弹”。如果你用过SOFA,那会更加重。我是用了两年SOFA,作为过来人,开始用时吐槽;但用久了,真的会发现其用心良苦。

阿里巴巴为什么主推HSF?比Dubbo有哪些优势?的更多相关文章

  1. HSF和Dubbo有什么区别

    一. 以下摘录自企业级分布式应用服务EDAS官网段落 RPC服务 提供对Dubbo和HSF两个RPC框架的支持.阿里巴巴第一代RPC框架Dubbo是国内第一款成熟的商用级RPC框架,已于2011年正式 ...

  2. 学生党如何拿到阿里技术offer: 《2016阿里巴巴校招内推offer之Java研发工程师(成功)》

    摘要: 这篇文章字字珠玑,这位面试的学长并非计算机相关专业,但是其技术功底足以使很多计算机专业的学生汗颜,这篇文章值得我们仔细品读,其逻辑条理清晰,问题把握透彻,语言表达精炼,为我们提供了宝贵的学习经 ...

  3. C#~异步编程续~.net4.5主推的await&async应用

    返回目录 之前写过两篇关于异步编程的文章,详细可以进入C#~异步编程和C#~异步编程在项目中的使用 .net的各个版本都有自己主推的技术,像.NET1.1中的委托,.NET2.0中的泛型,.NET3. ...

  4. C#~异步编程续~.net4.5主推的await&async应用(转)

    之前写过两篇关于异步编程的文章,详细可以进入C#~异步编程和C#~异步编程在项目中的使用 .net的各个版本都有自己主推的技术,像.NET1.1中的委托,.NET2.0中的泛型,.NET3.0中的Li ...

  5. LoadRunner 12 发布,主推云

    LoadRunner 12 发布,主推云 http://blog.csdn.net/testing_is_believing/article/details/22572341

  6. RPC实现原理(HSF、dubbo) 从头开始(一)

    前言 阔别了很久博客园,虽然看了以前写的很多东西感觉好幼稚,但是还是觉得应该把一些自己觉得有用的东西和大家分享.废话不多说,现在开始进入正题. 之前的六年工作经验,呆过了一些大公司,每个在大公司呆过的 ...

  7. 阿里巴巴分布式服务框架HSF

    HSF称之为高速服务框架HSF(High-speed Service Framework),是在阿里巴巴广泛使用的分布式RPC服务框架. HSF连通不同的业务系统,解耦系统间的实现依赖.HSF从分布式 ...

  8. 用阿里巴巴官方给Jmeter开发的Dubbo sampler取样器进行dubbo接口测试【图解剖析】

    自:https://blog.csdn.net/cyjs1988/article/details/84258046 [一]Dubbo sampler下载地址: 该插件支持jmeter 3.2及3.2以 ...

  9. Google主推-Android开发利器——Android Studio,这可能是最全的AS教程!

    Android Studio使用手册 "工欲善其事必先利其器" 作为一个Android开发人员来说,一款好的开发工具也是相当重要的,在相当长的时间礼,Google都是基于Eclip ...

随机推荐

  1. day03_11 if语句实现猜年龄01

    老男孩猜年龄游戏 age_of_princal = 56 guess_age = int( input(">>:") ) #以下为伪代码 ''' if guess_ag ...

  2. python学习--Python之import与from...import的区别与用法

    Python编码第一步是导入模块,有时候用import ***有时候用from...import,它们有什么区别呢,请看实例A/B: A: 1.当模块test.py中没有类,只有方法add,此方法实现 ...

  3. niubi-job:一个分布式的任务调度框架设计原理以及实现

    niubi-job的框架设计是非常简单实用的一套设计,去掉了很多其它调度框架中,锦上添花但并非必须的组件,例如MQ消息通讯组件(kafka等).它的框架设计核心思想是,让每一个jar包可以相对之间独立 ...

  4. zabbix2.4升级到2.5 --考虑升级到zabbix3.0

    现在zabbix服务器,zabbix服务日志频繁出现MySQL server  has gone away,经搜索,此问题在zabbix2.5之前是zabbix的一个bug,zabbix2.5后已经修 ...

  5. python操redis

    Python操作redis python连接方式:点击 下面介绍详细使用 1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redi ...

  6. 【bzoj2476】战场的数目 矩阵乘法优化dp

    题目描述 (战场定义为对于最高的一列向两边都严格不增的“用积木搭成”的图形) 输入 输入文件最多包含25组测试数据,每个数据仅包含一行,有一个整数p(1<=p<=109),表示战场的图形周 ...

  7. TCP/IP(域名DNS)

    域名是不带http://的. 有DNS就能解析域名,只要联网,不用担心你的域名和IP无法映射起来. 当然,域名和IP的映射也可以通过本地hosts文件(优先于DNS)添加.C:\Windows\Sys ...

  8. google jib容器打包工具

    简介 Jib 是 Google 开发的可以直接构建 Java 应用的 Docker 和 OCI 镜像的类库,以 Maven 和 Gradle 插件形式提供. 通过 Jib,Java 开发者可以使用他们 ...

  9. power shell remoting

    Powershell Remoting建立在windows WinRM服务之上,可以一对一或一对多远程控制,也可以建立HTTP 或 HTTPS的“listeners”,使用WS-MAM协议接收远程传递 ...

  10. javascript事件捕获机制,dom tree

    $(document,"a").on("click",function(){alert(2);return false;}); $("<a> ...