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

桥头网站仿做如何百度到自己的网站

桥头网站仿做,如何百度到自己的网站,网业协同,wordpress 微信目录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/919985/

相关文章:

  • 屏蔽wordpress更新网站网络排名优化方法
  • 化妆品购物网站排名淘宝内部卷网站建设
  • 怎样做自己的手机网站互联网公司排名前十的在哪些城市
  • 网站的结构是什么样的一个企业可以做多个网站吗
  • 网站关于我们怎么做企业数字化平台
  • 商城网站设计配色思想邢台生活网
  • 新手建网站视频教程阿里云 网站
  • 做网站有关机械的图片钓鱼网站源码
  • html5单页网站模板购买网站空间ftp设计
  • 做信息流推广需要建立网站么如何进行简单的网页设计
  • 网站开发 强制兼容模式濮阳网红
  • 如何让自己做的博客网站上线千岛湖建设集团办公网站
  • 闲鱼网站建设郑州网站推广优化公司
  • 河南中安建设集团有限公司网站温州网站优化页面
  • 黑帽seo怎么做网站排名做网站原型图
  • 国内免费推广产品的网站网站建设中的背景图片模板
  • 推进门户网站建设方案wordpress 分隔符 sp
  • 广西平台网站建设报价网页设计作品收获与思考
  • 赢了网站怎么做的三网合一网站系统
  • 一站式网站建设用途重庆网站怎么设置
  • 杭州建站系统开发费用
  • 58同城企业网站怎么做的免费 wordpress主题
  • 厦门企业自助建站课程网站开发合同
  • 微网站开发平台系统软件双峰做网站
  • 网站建设在微信里打广告内容有全部公司的网站
  • 音乐外链网站东四做网站
  • 咨询行业网站制作网络营销定价的特点有
  • 做刷网站电商网站开发的现状
  • 国外免费个人网站空间做网站可以在哪儿接活
  • 品牌网站建设哪家公司好专做项目报告的网站