dubbox

厉害了,Dubbo 正式毕业!

隐身守侯 提交于 2019-12-06 11:17:17
厉害了,2019/05/21 Apache软件基金会发表博文,宣布 Dubbo 在 2019/05/20 这天正式毕业,成为 Apache 的顶级项目。 参考: https://blogs.apache.org/foundation/entry/the-apache-software-foundation-announces52 不过 Github 的名称还没改过来,还是叫 incubator-dubbo,坐等更新为:dubbo,估计快了。 栈长这里科普一下: Dubbo是阿里巴巴开源的 RPC 框架,后进入 Apache 开源孵化器,目前已在数十家公司中使用,包括阿里巴巴集团、中国人寿、中国电信、当当网、滴滴出行、海尔、中国工商银行等,大多是国内公司。 哈哈,上一张 Dubbo 的架构图,来自官网: 再来回顾下 Dubbo 的发展史: 2011/10/27: 阿里巴巴巴宣布 Dubbo 开源。 2012/10/23: 发布最后一个版本 2.5.3 并停止维护更新。 2017/07/31: 起死回生,官方宣布开启重新更新,并会得到重点维护,参考: 起死回生的分布式神器—Dubbo 。 2017/09/07: 发布起死回生的第一个版本: dubbo-2.5.4 。 2018/01/08: 1、Dubbo 团队透露 Dubbo 3.0 宣布正式开工,参考: 重大利好,Dubbo 3

Dubbox-2.8.4安装到本地仓库

时间秒杀一切 提交于 2019-12-06 10:45:55
1、先去github下载当当网维护的dubbox-2.8.4 https://github.com/dangdangdotcom/dubbox/tree/dubbox-2.8.4 2、 解压 dubbox-2.8.4.zip压缩包 3、用maven编译工程 进入到解压后的根目录,使用mvn命令进行安装编译 mvn install -f ./pom.xml -D maven.test.skip=true 4、编译完成后每个子工程下面target目录会生成相应的jar或者war 5、我们需要做的就是把生成的jar安装到maven本地仓库 进入生成的dubbo-2.8.4.所在目录 执行安装命令 mvn install:install-file -Dfile=./dubbo-2.8.4.jar -DgroupId=com.alibaba -DartifactId=dubbo -Dversion=2.8.4 -Dpackaging=jar -DgeneratePom=true 来源: oschina 链接: https://my.oschina.net/u/2614774/blog/1914453

SpringBoot之Dubbox

橙三吉。 提交于 2019-12-03 11:46:33
上次springboot集成dubbo写过一个简单的demo调用的方式,由于spring版本的问题,这次使用duboox,完全基于注解的方式。 dubbox 地址: https://github.com/dangdangdotcom/dubbox 由于dubbox没有发布到maven中央仓库,需要自己安装到本地maven库或者私库 git clone https://github.com/dangdangdotcom/dubbox 在dubbox目录执行mvn install -Dmaven.test.skip=true来尝试编译一下dubbo(并将dubbo的jar安装到本地maven库) 1.导入maven依赖 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.6</version> <exclusions> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.101tec</groupId>

Dubbox

匿名 (未验证) 提交于 2019-12-03 00:04:02
Dubbox 是一个分布式服务框架,其前身是阿里巴巴开源项目Dubbo ,被国内电商及互联网项目中使用,后期阿里巴巴停止了该项目的维护,当当网便在Dubbo基础上进行优化,并继续维护,为了与原有的Dubbo区分,故将其命名为Dubbox。 工作原理 节点角色说明: Provider: 暴露服务的服务提供方。 Consumer: 调用远程服务的服务消费方。 Registry: 服务注册与发现的注册中心。 Monitor: 统计服务的调用次调和调用时间的监控中心。 Container: 服务运行容器。 调用关系说明: 服务容器负责启动,加载,运行服务提供者。 服务提供者在启动时,向注册中心注册自己提供的服务。 服务消费者在启动时,向注册中心订阅自己所需的服务。 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。 有序列表项 一 有序列表项 二 有序列表项 三 有序列表项 一 有序列表项 二 有序列表项 三 有序列表项 一 有序列表项 二 有序列表项 三 有序列表项 三 有序列表项 一 有序列表项 二 有序列表项 三 有序列表项 一 有序列表项 二

品优购第一天20191024

家住魔仙堡 提交于 2019-12-02 05:31:15
项目简介   品优购采用当前主流的前后端编程架构     后端框架采用Spring +SpringMVC+mybatis +Dubbox     前端采用angularJS + Bootstrap      Dubbox框架       Dubbox 是一个分布式服务框架 后续更新 来源: https://www.cnblogs.com/liudingwei/p/11731889.html

dubbox粗记

旧街凉风 提交于 2019-12-02 05:00:41
一直在用dubbo2.5。今天花了一天时间研究了当当网的dubbox项目并在本地运行,粗略记录一下认识。 dubbox的主要升级点: 1、dubbox弥补了dubbo中没有REST框架的不足,但REST性能指标比RPC要差,非业务必要性要求首选RPC。已有的dubbo服务端服务可以通过dubbox快速包装为REST风格的服务。不管怎么说,在跨语言和多种前端对应时还是很有需要REST调用的。 2、几种序列化方式的增加,Kryo成为首选。dobbo RPC默认使用的hessian2确实有Bug,我们在项目中也遇到过。 3、其它一些升级和小改动 升级的必要性: 1、新项目建议升级使用dubbox,除了REST框架这一块有一定的学习成本外,其它可以从dubbo本身无缝沿用。 2、现有稳定运行项目没有遇到跨语言场景或需要全面开放REST调用框架包装支持,业务场景仅限于RPC调用可以不考虑升级。 3、dubbox需要手动maven安装和上传到私有库,目前没有在maven公库上发布 4、dubbx现在有当当网在维护,而dubbo基本这几年处于无人问津的状态,从项目可靠度和风险度来考虑建议使用dubbox。 关于未来: 1、考虑后端架构从dubbo切换到Jdubbox。 2、JFinal可以考虑直接支持dubbox了,而不是当初说的dubbo。 3、无论是dubbo还是dubbox

dubbox2.8.4编译发布到私服(nexus)

天大地大妈咪最大 提交于 2019-12-02 04:58:08
Maven介绍: M aven 的具体介绍及安装说明可以参考: http://wentao365.iteye.com/blog/903396 http://jingyan.baidu.com/article/295430f136e8e00c7e0050b9.html Nexus介绍: Nexus的具体介绍及安装说明可以参考: http://www.oschina.net/p/nexus http://aijezdm915.iteye.com/blog/1335025 http://www.cnblogs.com/quanyongan/archive/2013/04/24/3037589.html 下面介绍下将dubbo源码编译打包发布到远程nexus的步骤: 一、下载源码: dubbox2.8.4的源码下载地址:进入 https://github.com/dangdangdotcom/dubbox,点击Download Zip即可下载源码,下载下来为dubbox-master压缩文件,解压为dubbox-master文件夹 二、编译安装: 用CMD命令在checkout出来的dubbox目录执行mvn install -Dmaven.test.skip=true来尝试编译一下dubbo(并将dubbo的jar安装到本地maven库) 三、修改pom.xml文件

dubbox功能演示

China☆狼群 提交于 2019-11-29 19:22:16
dubbox功能演示 通过以下内容介绍dubbox框架。 dubbo是什么 dubbox又是什么 dubbo能做什么 dubbo框架设计 dubbo服务调用过程 1. dubbo是什么 Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。 其核心部分包含: 远程通讯: 提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。 集群容错: 提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。 自动发现: 基于注册中心目录服务,使服务消费方能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。 2. dubbox又是什么 Dubbox now means Dubbo eXtensions. If you know java, javax and dubbo, you know what dubbox is :)。当当网根据自身的需求,为Dubbo实现了一些新的功能,并将其命名为Dubbox(即Dubbo eXtensions)。升级和提供的功能列表: 支持REST风格远程调用(HTTP + JSON/XML) 支持基于Kryo和FST的Java高效序列化实现 支持基于Jackson的JSON序列化

性能优化 | 实现万行级数据读取优化

Deadly 提交于 2019-11-29 05:38:16
业务场景: 基于导出的功能上,要求一次性查询10w条数据。但是这个10w的开始值和结束值不固定(比如:startNum = 123; endNum = 100123;) 难点一: dubbox时间超时规定为1s,服务调用图如下: 难点二: 数据封装转换性能消耗较高,目前使用的BeanUtils 难点三: 并发能力很弱,在分割查询的过程中,如果有其他的服务进入,很容易导致数据混乱 公司使用的数据库为oracle,目前我自己实现的查询功能总耗时8s。这个时间能不能再次缩短?有没有比较好的方案对数据分割查询? 对于JDBC batchsize 和 fetchsize的一次尝试 Batch和Fetch两个特性非常重要,Batch相当于JDBC的写缓冲,Fetch相当于读缓冲。在加入这两个特性之后,查询10w条尝试,根据描述,能个提升4倍的时间。参考文章:http://blog.sina.com.cn/s/blog_9f8ffdaf0102x3nf.html 将代码摘抄之后,修改数据库连接的账户密码。单独使用检查代码是否能够独立运行,main,报错如下: Exception in thread "main" java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver at java.net.URLClassLoader

dubbox Web管理部署

妖精的绣舞 提交于 2019-11-27 13:19:36
前言:使用dubbo rpc远程调用,对于开发者或运维来说需要监控服务或者服务治理,所以需要搭建一些dubbo监控程序。 1.部署dubbo-admin 先clone git地址: dubbo地址或者dubbox地址 : https://github.com/dangdangdotcom/dubbox.git 编译打包成功后,将dubbo-admin/target/dubbo-admin-2.8.4.war 复制到tomcat下的webapps就算完成部署,再修改一下/WEB-INF/dubbo.properties配置文件 dubbo.registry.address=zookeeper://127.0.0.1:2181?backup=127.0.0.1:2182,127.0.0.1:2183 dubbo.admin.root.password=root #用户名 dubbo.admin.guest.password=guest #密码 再访问地址就ok了。 2.部署dubbo keeper 先clone git 地址: https://github.com/dubboclub/dubbokeeper.git 支持三个存储 mongodb lucene mysql,我这里采用 mysql,先执行根目录下的 install-mysql.bat 发现target目录有有mysql