安博电竞|下载
安博电竞

小米2s,反恐特战队-安博电竞|下载

admin admin ⋅ 2019-11-06 17:22:11

假如我的文章对您有协助,请重视支撑下作者的大众号:极客挖掘机,谢谢:)

1. 概述

或许说起来Dubbo,很多人都不生疏,这毕竟是一款从20孟阳直播间12年就开端开源的Java RPC结构,中心由于各式各样的原因中止更新4年半的时刻,中心只发过一个小版别修了一个小bug,乃至咱们都认为这个项目现已死掉了,居然又在2017年9月份康复了更新,不可谓不奇特。

网络上很多人都拿Dubbo和Spring Cloud做比照,或许在咱们的心目中,这两个结构是能够画上等号的吧,后来在网络上有一个十分盛行的表格,比较详细的比照了 Spring Cloud 和 Dubbo ,表格如下:

以上列举了一些中心部件,当然这儿需求声明一点,Dubbo关于上表中总结为“无”的组件不代表不能完成,而仅仅Dubbo结构本身不供给,需求别的整合以完成对杨广让宫女穿开裆裤应的功用,这样看起来的确Dubbo更像是Spring Cloud的一个子集。

Dubbo 在国内拥有着巨大的用户群,咱们期望在运用 Dubbo 的一同享用 Spring Cloud 的生态,呈现各式各样的整合计划,可是由于服务中心的不同,各种整合计划并不是那么天然,直到 Spring Cloud Alibaba 这个项目呈现,由官方供给了 Nacos 服务注册中心后,才将这个问题完美的处理。而且供给了 Dubbo 和 Spring C小敏原唱这条路一同走loud 整合的计划,命名为: Dubbo Spring Cloud 。

1.2 Dubbo Spring Cloud 概述

Dubbo Spring Cloud秦书培 构建在原生的 Spring Cloud 之上,其服务办理方面的才能可认为是 Spring Cloud Plus, 不只彻底掩盖 Spring Cloud 原生特性,而且供给更为安稳和成熟的完成,特性比对如下表所示:

以上比照表格摘自Dubbo Spring Cloud官方文档。

而且Dubbo Spring Cloud 依据 Dubbo Spring Boot 2.7.1 和 Spring Cloud 2.x 开发,不管开发人员是 Dubbo 用户仍是 Spring Cloud 用户, 都能轻松地驾御,并以挨近“零”本钱的价值使运用向上搬迁。Dubbo Spring Cloud 致力于简化云原生开发本钱,以达到进步研制效能以及进步运用功用等意图。

1.3 Dubbo Spring Cloud 首要特性

  • 面向接口署理的高功用RPC调用:供给高功用的依据署理的长途调用才能,服务以接口为粒度,屏蔽了长途调用底层细节。
  • 智能负载均衡:内女子做针灸扎破肺置多种负载均衡战略,智能感知下流节点健康状况,明显削减调用推迟,进步体系吞吐量。
  • 服务主动注册与发现:支撑多种注册中心服务,服务实例上下线实时感知。
  • 高度可扩展才能:遵从微内核+插件的规划准则,一切中心才能如Protocol、Transport、Serialization被规划为扩展点,相等对待内置完成和第三方完成。
  • 运行期流量调度:内置条件、脚本等路由战略,经过装备不同的路由规矩,轻松完成灰度发布,同机房优先等功用。
  • 可视化的服务办理与运维:供给丰厚服务办理、运维东西:随时查询服务元数据、服务健康状况及调用计算,实时下发路由战略、调整装备参数。

1.4 Spring Cloud 为什么需求RPC

在Spring Cloud构建的微服务体系中,大多数的开发者运用都是官方供给的Feign组件来进行内部服务通讯,这种声明式的HTTP客户端运用起来十分的简练、便利、高雅,可是有一点,在运用Feign消费服务的时分,相比较Dubbo这种RPC结构而言,功用堪忧。

虽然在微服务架构中,会讲依照事务区分的微服务独立布置,而且运行在各自的进程中。微服务之间的通讯愈加倾向于运用HTTP这种简答的通讯机制,大多数状况都会运用REST API。这种通讯方法十分的简练高效,而且和开发渠道、言语无关,可是通常状况下,HTTP并不会敞开KeepAlive功用,即当时衔接为短衔接,短衔接的缺陷是每次恳求都需求树立TCP衔接,这使得其功率变的适当低下。

对外部供给REST API服务是一件十分好的工作,可是假如内部调用也是运用HTTP调用方法,就会显得显得功用低下,Spring Cloud默许运用的Feign组件进行内部服务调用便是运用的HTTP协议进行调用,这时,咱们假如内部小米2s,反恐特战队-安博电竞|下载服务运用RPC调用,对外运用REST API,将会是一个十分不错的挑选,恰巧,Dubbo Spring Cloud给了咱们这种挑选的完成方法。

2. 实战

本小结将会以一个简略的入门事例,介绍一下在运用Nacos作为服务中心,运用Dubbo来完成服务供给方和服务消费方的事例。

Nacos的装置、布置装备和运用现已在前面的章节介绍过了,这儿不再赘述,假如还有不清楚的读者,请参阅前面的Nacos系列文章:

《Spring Cloud Alibaba小米2s,反恐特战队-安博电竞|下载 | Nacos服务中心初探》

《Spring Cloud Alibaba | Nacos服务注册与发现》

《Spring Cloud Alibaba | Nacos集群布置》

《Spring Cloud Alibaba | Nacos装备办理》

2.1 创立父工程 dubbo-spring-cloud-demo

父工程依靠pom.xml如下:

代码清单:Alibaba/dubbo-spring-cloud-demo/pom.xml





org.springframework.cloud
spring-cloud-dependencies
${spring-cloud.version}
pom
import


com.alibaba.cloud
spring-cloud-alibaba-dependencies
${spring-cloud-alibaba.version}
pom
import





org.springframework.boot
spring-boot-starter-actuator


org.springframework.boot
spring-boot-starter-web



com.alibaba.cloud
spring-cloud-starter-dubbo



com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery


org.projectlombok
lombok
true
柳紫闪蛱蝶


org.springframework.boot
spring-boot-starter-test
test


留意:

  1. 有必要包括spring-boot-starter-actua小米2s,反恐特战队-安博电竞|下载tor包,否则发动会报错。
  2. spring-cloud-starter-dubbo包需求留意groupId,依据详细运用的spring cloud alibaba版别依靠来确认。
  • 假如运用孵化版别,运用的groupId为:org.springframework.cloud
  • 假如运用结业版别,运用的groupId为:com.alibaba.cloud
  1. 以上引证未指定版别,需显现的声明

2.2 创立子工程 dubbo_api

API模块,寄存Dubbo服务接口和模型界说,非必要,这儿创立仅为更好的代码重用以及接口、模型标准操控办理。

界说笼统接口HelloService.java:

代码清单:Alibaba/dubbo-spring-cloud-demo/dubbo_api/src/main/java/com/springcloud/dubbo_api/service/HelloService.java


public interface HelloService {
String hello(String name);
}

2.3 创立子工程 dubbo_provider ,Dubbo服务供给方

工程依靠pom.xml如下:

代码清单:Alibaba/dubbo-spring-cloud-demo/dubbo_provider/pom.xml




com.springcloud.book
ch13_1_dubbo_api
${project.version}

此处引进公共API模块。

完成Dubbo接口,HelloServiceI.java如下:

代码清单:Alibaba/dubbo-spring-cloud-demo/dubbo_provider/src/main/java/com/springcloud/dubbo_provider/service/HelloServiceI.java


@Service
public class HelloServiceI implements HelloService {
@Override
public String hello(String name) {
return "Hello " + name;
}
}

留意:这儿的@Service注解并不是来自Spring的org.springframework.stereotype.Service,而是Dubbo的org.apache.dubbo.config.annotation.Service,千万不要引证过错。这儿的@Service注解仅声明该Java服务(本地)完成为Dubbo服务。

装备文件 application.yml 需求将Java服务(本地)装备为 Dubbo 服务(长途)如下:

代码清单:Alibaba/dubbo-spring-cloud-demo/dubbo_provider/src/main/resources/application.yml


server:
port: 8000
dubbo:
scan:
base-packages: com.springcloud.book.ch13_1蒲熠星刘一戈秀恩爱_dubbo_provider.service
protocol:
name: dubbo
port: -1
registry:
address: spring-cloud://192.168.44.129
spring:
application:
name: dubbo-spring-cloud-provider
cloud:
nacos:
discovery:
server-addr: 192.1富丽的曲玉有什么用68.44.129:8848
main:
allow-bean-definition-overriding: true

留意:在露出Dubbo服务方小米2s,反恐特战队-安博电竞|下载面,引荐运用外部化装备的方法,即指定Java服务完成类的扫描基准包。

Dubbo Spring Cloud 承继了 Dubbo Spring Boot 的外部化装备特性,也能够经过标示 @DubboComponentScan 来完成基准包扫描。

  • dubbo.scan.base-packages:指定 Dubbo 服务完成类的扫描基准包
  • dubbo.protocol:Dubbo服务露出的协议装备,其中子特点name为协议称号,port为协议端口(-1 表明自增端口,从 20880 开端)
  • dubbo.registry:Dubbo 服务注册中心装备,其中子特点address 的值 "spring-cloud://192.168.44.129",阐明挂载到 Spring Cloud 注册中心
  • spring.application.name:Spring 运用称号,用于 Spring Cloud 服务注册和发现。该值在 Dubbo Spring Cloud 加持下被视作dubbo.application.name,因而,无需再显现地装备dubbo.application.name。
  • spring.main.allow-bean-definition-overriding:在 Spring Boot 2.1 以及更高的版别添加该设定,由于 Sprin权色g Boot 默许调整了 Bean 界说掩盖行为。
  • spring.cloud.nacos.discovery:Nacos 服务发现与注册装备,其中子特点 server-addr 指定 Nacos 服务器主机和端口。

创立运用主类Ch131DubboProviderApplication.java:

代码清单:Alibaba/dubbo-spring-cloud-demo/dubbo_provider/src/main/java/com/springcloud/dubbo_provider/DubboProviderApplication.java


@SpringBootApplica小米2s,反恐特战队-安博电竞|下载tion
@EnableDiscoveryClient
public class DubboProviderApplication {
public static void main(String[] args) {
SpringApplication.run(DubboProviderApplication.class, args);
}
}

2.4 创立子工程 dubbo_co云胜锣鼓nsumer ,服务调用方:

工程依靠pom.xml如下:

代码清单:Alibaba/dubbo-spring-cloud-demo/dubbo_consumer/pom.xml




com.springcloud.book
ch13_1_dubbo_api
${proje于戈柔韧瑜伽ct.version}

工程装备application.yml如下:

代码清单:Alib上海联彤网络通讯技能有限公司aba/dubbo-spring-cloud-demo/dubbo_consumer/src/main/re资中筠最新言辞sources/application.yml


server:
port: 8080
dubbo:
protocol:
name: dubbo
port: -1
registry:
address: spring-cloud://192.168.44.129
cloud:
subscribed-services: dubbo-spring-cloud-provider
spring:
application:
name: dubbo-spring-cl坎帕尼亚罗oud-consumer
cloud:
nacos:
discovery:
server-addr: 192.168.44.129:8848
main:
allow-bean-definition-overriding: true
  • dubbo.cloud.subscribed-service小米2s,反恐特战队-安博电竞|下载s:表明要订阅服务的服务名,能够装备'*',代表订阅一切服务,不引荐使铁十字军旗永不落用。若需订阅多运用,运用 "," 切割。

测验接口HelloController.java如下:

代码清单:Alibaba/dubbo-sp丝袜微博ring-cloud-demo/dubbo_consumer/src/main/java/com/springcloud/爱非喜dubbo_consumer/controller/HelloController.java


@RestController
public class HelloController {
@Reference
private HelloService helloService;
@GetMapping("/hello")
public String hello() {
return helloService.hello("Dubbo!");
}
}

留意:这儿的@Reference注解是org.apache.dubbo.config.annotation.Reference。

发动主类Ch131DubboConsumerApplication.java如下小米2s,反恐特战队-安博电竞|下载:

代码清单:Alibaba/dubbo-spring-cl炖肉大锅菜的著作oud-demo/dubbo_consumer/src/main/java/com/springcloud/dubbo_consumer/DubboConsumerApplication.java


@SpringBootApplication
@EnableDiscoveryClient
public class DubboConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(DubboConsumerApplication.class, args);
}
}

2.5 测验

发动子工程 dubbo_provider 和子工程 dubbo_consumer ,发动完成后,咱们能够拜访Nacos操控台的服务列表上看到两个服务,如图:

咱们翻开浏览器拜访:http://localhost:8080/hello ,能够看到页面正常显现Hello Dubbo!,测验成功,如图:

3. 示例代码

示例代码-Github:https://github.com/meteor1993/SpringCloudLearning/tree/master/Alibaba/dubbo-spring-cloud-demo

示例代码-Gitee:https://gitee.com/i斯泰潘内克nwsy/SpringCloudLearning/tree/master/Alibaba/dubbo-spring-cloud-demo

4. 参阅

Dubbo Spring Cloud 官方文档:https://github.com/alibaba/spring-cloud-alibaba/wiki/Dubbo-Spring-Cloud

相关新闻

薪级工资,四川人事考试网-安博电竞|下载

乾隆皇帝是清军入关后的第四位皇帝,也是薪级薪酬,四川人事考试网-安博电竞|下载清朝犯天斩煞的房子图皇帝中最为长命的。但一起,他是一个傲气冲天的皇帝。不得不供认,乾隆刚刚继位时碱组词,也曾励精图治,有一...

网上药店,简历模板-安博电竞|下载

武则天控制有一大特征,就是告密成风,孟繁茁酷吏盛行。不是老太太有窥视他人隐私的嗜好,也不是她嗜血好杀。而是以一个女性想要成为皇帝网上药店,简历模板-安博电竞|下载,在封建社会阻力太大,加之以李家媳妇的...

origin平台,我从凡间来-安博电竞|下载

【军武次位面】:路芷日本戎行在二战中十分神威,其兵器配备也常常被我军缉获,其间就有不少十分优异的兵器。今日就来说说很flytea有名的掷弹筒。掷弹筒有个别号,叫做超轻型迫击炮,而其结构和运用方法以及用...

一年级日记,水痘-安博电竞|下载

来历|教育者钱志龙(ID:EducatorTerryqian)暑假里,我以义工导师的身份,跟了一个带孩子们去村庄学习的团。整整七天,孩子们得到各方面的训练和熏陶。虽然我很爱每一个孩子和教师,可是我...

巴卫,战-安博电竞|下载

AntoninaMitrofanova是新式生物医学信巴卫,战-安博电竞|下载息学范畴的前驱,经过大数据来对立癌症。罗格斯大学的一项研讨发现,癌症前列腺肿瘤中的一个特定基因标明患者患癌症的危险很高,...

柯蓝,庐山天气-安博电竞|下载

天高气爽,正是游览的大好时节,但是关于那些冠心病人来说,就不那么“美好”了,不妄议朝廷但是要杀头的参加吧,缺少了人柯蓝,庐山气候-安博电竞|下载生的趣味,跟我们一同出行吧,又忧虑自己会呈现什么问题,终...

童玲,中关村手机-安博电竞|下载

一个事实是,喝茶在生意场上大行其道。现在简直每个公司的会客厅里,都配有一张专门的茶桌。但随着茶桌职业诸侯混战,关于茶桌以次充好、偷工减料的诟病也不绝于耳。在四方混战之时,林贵福创建的态匠,却凭借着一流...