当前位置: 首页 > news >正文

郑州关键词网站优化排名如何增加新网站的百度收录

郑州关键词网站优化排名,如何增加新网站的百度收录,网站后台如何做文件下载连接,网络营销建设网站实训目录1、dubbo简介2、dubbo解决了什么问题3、环境准备4、项目搭建5、总结springboot整合feign可参考我另外一篇文章SpringBoot集成Feign 1、dubbo简介 Apache Dubbo 最初在 2008 年由 Alibaba 捐献开源,很快成为了国内开源服务框架选型的事实标准框架 ,…

目录

  • 1、dubbo简介
  • 2、dubbo解决了什么问题
  • 3、环境准备
  • 4、项目搭建
  • 5、总结

springboot整合feign可参考我另外一篇文章SpringBoot集成Feign

1、dubbo简介

Apache Dubbo 最初在 2008 年由 Alibaba 捐献开源,很快成为了国内开源服务框架选型的事实标准框架 ,得到了各行各业的广泛应用。在 2017 年,Dubbo 正式捐献到 Apache 软件基金会并成为 Apache 顶级项目,目前 Dubbo3 已经是一站式的微服务解决方案。可以看到自 SpringCloud Alibaba 2021.0.1.0 起,Dubbo已被移除SpringCloud Alibaba 。目前基本都是使用org.apache.dubbo,而com.alibaba.dubbo已被弃用。
在这里插入图片描述

2、dubbo解决了什么问题

分类dubbo的特性
高性能RPC调用(主)提供高性能的基于代理的远程调用能力,服务以接口为粒度,为开发者屏蔽远程调用底层细节
服务自动注册与发现支持多种注册中心服务,服务实例上下线实时感知
运行期流量调度内置条件、脚本等路由策略,通过配置不同的路由规则,轻松实现灰度发布、同机房优先等功能
智能负载均衡内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量
高度可扩展能力遵循微内核+插件的设计思想,所有核心能力如Protocol、Transport、Serialization被设计为扩展点,平等对待内置实现和第三方实现
可视化的服务治理与运维提供丰富服务治理、运维工具:随时查询服务元数据、服务监控状态以及调用统计,实时下发路由策略,调整配置参数

3、环境准备

系统:windows
JDK:1.8
Maven:3.8.1
Nacos:2.2.0 (下载和使用介绍:【Nacos】SpringBoot集成Nacos)

项目下载模板地址:https://github.com/shengwanping/SpringBoot-dubbo-demo.git

4、项目搭建

1、首先创建一个基于Maven的工程
在这里插入图片描述

2、然后创建三个子项目:springboot-dubbo-provider、springboot-dubbo-interface、springboot-dubbo-consumer,如下

在这里插入图片描述
在这里插入图片描述

3、每个子项目分别创建如下三个目录:org.dubbo.consumer; org.dubbo; org.dubbo.provider
在这里插入图片描述

4、父项目中添加Maven依赖
在这里插入图片描述

<!--dependencyManagement 依赖管理,子项目不会继承父依赖,需要重新声明--><dependencyManagement><dependencies><!-- spring-boot依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.3.12.RELEASE</version><type>pom</type><scope>import</scope></dependency><!-- spring-cloud alibaba依赖--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2.2.7.RELEASE</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><!--com.alibaba.cloud 2.2.7版本有个坑,需要把spring-context-support升到1.0.11才能启动项目--><dependencies><dependency><groupId>com.alibaba.spring</groupId><artifactId>spring-context-support</artifactId><version>1.0.11</version></dependency></dependencies>

5、然后在 springboot-dubbo-consumer 和 springboot-dubbo-provider 两个模块 pom.xml 中进行具体依赖的配置
在这里插入图片描述

<dependencies><!--引入 springboot-dubbo-interface 接口服务--><dependency><groupId>org.example</groupId><artifactId>springboot-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency><!-- springboot 依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--  nacos 服务的注册发现     --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!--  nacos  配置中心做依赖管理    --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-dubbo</artifactId></dependency><!-- dubbo-apache --><dependency><groupId>org.apache.dubbo</groupId><artifactId>dubbo-spring-boot-starter</artifactId><version>2.7.8</version></dependency></dependencies>

6、定义服务接口

在这里插入图片描述

package org.dubbo;public interface DemoService {String sayHello(String name);
}

7、配置服务端yml文件

在这里插入图片描述

server:port: 8010spring:# 应用名称(nacos会将改名称作为服务名称)application:name: springboot-dubbo-providercloud:nacos:server-addr: localhost:8848# 注册中心discovery:namespace: public #命名空间,如prod,dev,默认public# 配置中心config:server-addr: localhost:8848dubbo:protocol:name: dubboport: -1registry:address: nacos://localhost:8848

8、配置消费端yml文件

在这里插入图片描述

server:port: 8011spring:# 应用名称(nacos会将改名称作为服务名称)application:name: springboot-dubbo-consumercloud:nacos:server-addr: localhost:8848# 注册中心discovery:namespace: public #命名空间,如prod,dev,默认public# 配置中心config:server-addr: localhost:8848dubbo:protocol:name: dubboport: -1registry:address: nacos://localhost:8848

9、定义服务端的实现 和 服务端启动类
在这里插入图片描述
实现类:

package org.dubbo.provider;import org.apache.dubbo.config.annotation.DubboService;
import org.dubbo.DemoService;@DubboService
public class DemoServiceImpl implements DemoService {@Overridepublic String sayHello(String name) {return "Hello " + name;}
}

启动类:

package org.dubbo.provider;import org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@EnableDubbo
@SpringBootApplication
public class ProviderApplication {public static void main(String[] args) {SpringApplication.run(ProviderApplication.class, args);}
}

10、定义消费端 启动类和调用类
在这里插入图片描述
启动类:

package org.dubbo.consumer;import org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@EnableDubbo
public class ConsumerApplication {public static void main(String[] args) {SpringApplication.run(ConsumerApplication.class, args);}
}

调用类:

package org.dubbo.consumer;import java.util.Date;import org.apache.dubbo.config.annotation.DubboReference;
import org.dubbo.DemoService;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;@Component
public class Task implements CommandLineRunner {@DubboReferenceprivate DemoService demoService;@Overridepublic void run(String... args) throws Exception {String result = demoService.sayHello("world");System.out.println("Receive result ======> " + result);new Thread(()-> {while (true) {try {Thread.sleep(1000);System.out.println(new Date() + " Receive result ======> " + demoService.sayHello("world"));} catch (InterruptedException e) {e.printStackTrace();Thread.currentThread().interrupt();}}}).start();}
}

11、分别先后启动 服务启动类 和 消费启动类,当消费启动类控制台看到如下信息则说明成功了。

在这里插入图片描述

还可在nacos中看到注入的两个服务
在这里插入图片描述

5、总结

简单理解在微服务中使用Dubbo实现RPC远程接口调用,只需要满足如下几个条件:

1、导入org.apache.dubbo maven依赖。
2、配置基于dubbo的yml配置文件
3、在启动类加上@EnableDubbo注解
4、被调用接口实现类使用@DubboService注解
5、调用接口时使用@DubboReference注解

参考地址:
https://cn.dubbo.apache.org/zh-cn/overview/what/overview/
https://spring.io/projects/spring-cloud
https://blog.csdn.net/x734400146/article/details/108087926

http://www.yayakq.cn/news/974683/

相关文章:

  • 做动漫头像的网站手机网站后台管理
  • 网站设计与网页制作在线昆明营销型网站建设
  • 网站开发和合同视频生成链接
  • 山东网站建设公司电话网络基础知识培训
  • 对网站建设需求网络营销的常见工具有什么
  • 网站开发工程师的职责汕头站
  • 网站直接登陆wordpress插画网站
  • 爱站网长尾词挖掘工具建设商城网站的书籍钱
  • 建设 公司 网站 请示四川企业网站开发
  • 做网络课程的网站wordpress响应式concise主题
  • 个人网站设计及实现论文杭州市做网站的公司
  • 装修公司网站源码php电商营销渠道有哪些
  • 惠州网站推广app开发大概要多少钱
  • 网站开发的英文书有什么iis6建设网站
  • 哪些网站比较容易做珠海网站建设
  • 上传网站软件备案域名查询官网
  • 廊坊网站关键词排名下载网站模板后本地的网站会自动做跳转
  • 单页响应式网站模板零基础学习做网站
  • 长春火车站时刻表极简网站模板
  • 峨山网站建设山东外贸网站是什么意思
  • 网站收录查询爱站2020新闻大事件摘抄
  • 成都科技网站建设电话辽宁省建设工程信息网入辽打印
  • 农药放行单在哪个网站做省建设厅网站安徽
  • 全自动网站建设宠物网站项目
  • 网站开发core文件作用php一个空间放多个网站
  • 坪地网站建设如何网站页面图片尺寸
  • 安居网站建设动画制作软件免费
  • 公众号里的电影网站怎么做的免费网站加速服务
  • 大型网站建设规范佛山网站优化流程
  • 内推网站最好的网站模板下载网站