2.16日学习打卡
目录:
- 2.16日学习打卡
- 一. 什么是分布式?
- 二. 什么是RPC?
- 三. Dubbo概念_简介
- 四. Dubbo核心组件
- 五.Dubbo配置开发环境
- 六. Dubbo配置开发环境_管理控制台
一. 什么是分布式?
可以看我的这篇文章–2.14日学习打卡----初学Zookeeper(一)
二. 什么是RPC?
RPC(Remote Procedure Call)远程过程调用,它是一种通过网络从远程计算机程序上请求服务。
大白话理解就是:RPC让你用别人家的东西就像自己家的一样。
RPC两个作用:
- 屏蔽远程调用跟本地调用的区别,让我们感觉就是调用项目内的方法
- 隐藏底层网络通信的复杂性,让我们更加专注业务逻辑。
常用的RPC框架
RPC是一种技术思想而非一种规范或协议。
常见 RPC 技术和框架:
阿里的 Dubbo/Dubbox、Google gRPC、Spring Cloud。
三. Dubbo概念_简介
Dubbo是什么
Apache Dubbo是一款高性能、轻量级的开源服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。
Dubbo能做什么
注意:
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可。
Dubbo支持的协议
协议是两个网络实体进行通信的基础,数据在网络上从一个实体传输到另一个实体,以字节流的形式传递到对端。在这个字节流的世界里,如果没有协议,就无法将这个一维的字节流重塑成为二维或者多维的数据结构以及领域对象。
Dubbo支持的协议
- Dubbo协议
- Hessian协议
- HTTP协议
- RMI协议
- WebService协议
- Memcached协议
- Redis协议
推荐:
使用Dubbo协议。
四. Dubbo核心组件
注册中心Registry
在Dubbo微服务体系中,注册中心是其核心组件之一。Dubbo通过注册中心实现了分布式环境中各服务之间的注册与发现,是各个分布式节点之间的纽带。
其主要作用如下:
- 动态加入:一个服务提供者通过注册中心可以动态地把自己暴露给其他消费者,无须消费者逐个去更新配置文件。
- 动态发现:一个消费者可以动态地感知新的配置、路由规则和新的服务提供者,无须重启服务使之生效。
- 动态调整:注册中心支持参数的动态调整,新参数自动更新到所有相关服务节点。
- 统一配置:避免了本地配置导致每个服务的配置不一致问题。
常见得注册发现服务
常见的注册中心有zookeeper 、eureka、consul、etcd。
服务提供者Provider
服务的提供方
服务消费者Consumer
调用远程服务的服务消费方
监控中心Monitor
主要负责监控统计调用次数和调用时间等。
工作流程
五.Dubbo配置开发环境
下载Zookeeper镜像
docker pull zookeeper:3.6.3
启动运行容器
docker run --name zk -d -p 2181:2181 zookeeper:3.6.3
参数:
-d:守护进程运行
-p:映射端口号
进入容器
docker exec -it zk /bin/bash
参数:
exec:在运行的容器中执行命令
-it:交互式
六. Dubbo配置开发环境_管理控制台
介绍
Dubbo-admin管理平台,图形化的服务管理页面,安装时需要指定注册中心地址,即可从注册中心中获取到所有的提供者/消费者进行配置管理。
下载Dubbo-Admin镜像
docker pull docker.io/apache/dubbo-admin
启动运行容器
docker run -d \
--name dubbo-admin \
-p 9600:8080 \
-e admin.registry.address=zookeeper://192.168.66.100:2181 \
-e admin.config-center=zookeeper://192.168.66.100:2181 \
-e admin.metadata-report.address=zookeeper://192.168.66.100:2181 \
--restart=always \
docker.io/apache/dubbo-admin:0.4.0
参数:
–restart:always 容器退出时总是重启
admin.registry.address:注册中心
admin.config-center:配置中心
admin.metadata-report.address:元数据中心
可视化界面
浏览器输入http://192.168.66.100:9600,用户名root 密码 root
如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力!