ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

一文搞懂 Dubbo 入门理论

2022-08-15 19:04:29  阅读:150  来源: 互联网

标签:Dubbo 调用 服务 入门 Service RPC 注册 搞懂


RPC简介

 

● RPC, Remote Procedure Call ,远程过程调用,是一种跨系统间服务调用的协议或框架

 

● 在很多企业,在内部存在大量的业务子系统,这些子系统都承担独立的业务功能,并相互协作,实现企业各种业务

 

● 这些业务子系统协作过程中,存在大量的相互接口调用,常用的接口调用技术有Socket、Web Service、RPC、REST等

 

● 在企业内部,RPC由于其能像调用本地方法一样使用外部系统接口、效率高、性能好等特点,有着众多的应用场景

 

● RPC优点:

○ 格式清晰严谨,交互的双方遵守严格的接口规范和契约,更严谨稳定

○ 性能好,数据传输效率高,一般使用TCP协议,使用长连接进行调用

○ 私有协议,安全性高

 

● RPC缺点

○ 开发难度大,对初学者并不友好

○ 业务耦合度高

○ 灵活度低

 

● 常用的RPC技术或框架有:

○ Thrift

○ gRPC

○ Apache Dubbo

 

● RPC示意图

 

 

 

 

 

Dubbo概述

 

● Apache Dubbo 3 是一款微服务框架,为大规模微服务实践提供高性能 RPC 通信、流量治理、可观测性等解决方案,涵盖 Java、Golang 等多种语言 SDK 实现

 

● 不只是一款RPC框架,同时还提供服务治理,像服务自动注册与发现、服务监控、负载监控、服务降级等功能

 

● Dubbo支持多种服务注册中心,主要有:

○ multicast

○ zookeeper

○ nacos

○ redis

○ simple

 

Nacos概述

 

● 致力于发现、配置和管理微服务

● 支持几乎所有主流类型的“服务”的发现、配置和管理,像

 

○ Kubernetes Service

○ gRPC & Dubbo RPC Service

○ Spring Cloud RESTful Service

 

● Nacos注册中心部署,参考官网文档

https://nacos.io/zh-cn/docs/what-is-nacos.html,

方式如下

 

○ 本地使用,下载Nacos-server,然后通过bin/startup.cmd或bin/startup.sh运行即可,命令参考单机版命令,参考官网文档

○ 部署到Linux服务器,参考官网文档

○ 部署到Docker引擎,参考官网文档

 

● 部署完成后,可通过默认的8848端口访问注册中心,查看注册的服务,包括服务提供者和消费者,如下图

 

 

 


 

 


● 常用概念
○ 服务列表:
■ 显示注册的服务,包括服务提供者和消费者信息上 ■ 在服务管理-->服务列表中显示 ■ 如上图1中名为providers:com.lemon.demo.dubbo.inf.service.IUserService:2.0.1的服务,就是后面示例中Dubbo服务提供者定义并注册的IUserService服务
○ 配置列表:■ 显示注册的服务接口详细信息,包括输入参数类型和名称、返回参数类型、自定义类型描述等■ 在配置管理-->配置列表中■ 如上图2中名为com.lemon.demo.dubbo.inf.service.IUserService:2.0.1::provider:dubbo-provider 配置详情中,就有这个服务的详情
○ 命名空间:主要用于分类服务,将某类服务归类到指定的命名空间中
○分组:在同一个命名空间下的多个服务,也可以按实际业务逻辑进行分组处理

标签:Dubbo,调用,服务,入门,Service,RPC,注册,搞懂
来源: https://www.cnblogs.com/Wl55387370/p/16589322.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有