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

3.服务注册_服务发现

文章目录

  • 1.服务注册_服务发现
    • 1.1服务注册概念及图解介绍
    • 2.2 CAP理论
    • 2.3 常见的注册中心(了解)
    • 2.4 Eureka组件介绍
      • 2.4.1.搭建注册中心
      • 2.4.2服务注册
      • 2.4.3服务发现

大家好,我是晓星航。今天为大家带来的是 服务注册_服务发现 相关的讲解!😀

1.服务注册_服务发现

1.1服务注册概念及图解介绍

我们使用下图来举例,当我们游客去景区游玩的时候,景区电话发生变化,景区挨个去通知游客肯定不现实,这时景区就会告知114查号台,而游客打不通景区电话时,就会通过114来查找景区号码,从而实现每个游客都能够找到景区新的电话,景区也不需要挨个去通知游客变动的新号码。

image-20240530134803992

类似的,我们下图的服务注册功能图解和上面就很类似,此时的注册中心就相当于114查号台,服务消费者就是游客,服务提供者就是景区。

image-20240530135111328

注册中心名词解释:

  • 服务提供者(Server):一次业务中,被其它微服务调用的服务,也就是提供接口给其它微服务.
  • 服务消费者(Client):一次业务中,调用其它微服务的服务,也就是调用其它微服务提供的接口.
  • 服务注册中心(Registry):用于保存Server 的注册信息,当Server 节点发生变更时,Registry 会同步变更.服务与注册中心使用一定机制通信,如果注册中心与某服务长时间无法通信,就会注销该实例.

服务提供者和服务消费者是相对的。(可能在下一个场景中服务提供者就变为服务消费者了)

服务功能介绍:

  • 服务注册:服务提供者在启动时,向 Registry注册自身服务,并向 Registry定期发送心跳汇报存活状
  • 服务发现:服务消费者从注册中心查询服务提供者的地址,并通过该地址调用服务提供者的接口.服务发现的一个重要作用就是提供给服务消费者一个可用的服务列表.

2.2 CAP理论

CAP 理论是分布式系统中最基础,也是最关键的理论

image-20240530135832839

————————————————————————————————————————

C:一致性,此处的一致性,指的是强一致性

强一致性:主库和从库,不论何时,对外提供的服务都是一致的

弱一致性:随着时间的推移,最终达到了一致性

A: 可用性

对所有请求,都有响应,这个响应可能是错误的数据

P:分区容错性

在网络分区的情况下,系统依然可以对外提供服务

————————————————————————————————————————

image-20240530140009654

客户端向数据库集群发送了一个数据修改的请求,数据库集群需要向客户端进行响应

响应的时机分为以下两种:

1.主库接收到请求,并处理成功,此时数据还未完全同步到
从库随着时间的推移,主库和从库的数据,最终会达到一个一致性

2.主库接收到请求,并且所有从库数据同步成功时

因为P必须要保证,所以C和A只能二选一,我们的架构就是CP架构或者AP架构

以银行来举例:

image-20240530140446826

2.3 常见的注册中心(了解)

  1. Zookeeper

    Zookeeper的官方并没有说它是一个注册中心,但是国内Java体系,大部分的集群环境都是依赖Zookeeper来完成注册中心的功能.

  2. Eureka

    Eureka是Netflix开发的基于REST的服务发现框架,主要用于服务注册,管理,负载均衡和服务故障转移.官方声明在Eureka2.0版本停止维护,不建议使用.但是Eureka是SpringCloud服务注册/发现的默认实现,所以目前还是有很多公司在使用.

  3. Nacos

    Nacos是Spring Cloud Alibaba架构中重要的组件,除了服务注册,服务发现功能之外,Nacos还支持配置管理,流量管理,DNS,动态DNS等多种特性

2.4 Eureka组件介绍

新建总的Eureka项目,可以看到.xml文件中以及有eureka名字的id了

image-20240530142904879

引入项目大部分要使用的依赖

image-20240530143059889

2.4.1.搭建注册中心

1)创建项目

image-20240530145049617

2)pom加入Eureka 的依赖

image-20240530145209798

3)配置文件,增加Eureka相关的配置

image-20240530145247740

4)启动类,开启Eureka的功能

image-20240530145026266

启动后访问Eureka页面

image-20240530144912425

看到这个界面说明,我们Eureka服务中心已经搭建好了

image-20240530144844084

2.4.2服务注册

image-20240530152953568

1.加入Eureka的依赖

image-20240530145744996

2.修改配置信息

image-20240530151149383

3.启动, 测试

image-20240530152354454

2.4.3服务发现

image-20240530153011505

1.加入Eureka依赖

image-20240530151514598

2.修改配置信息

image-20240530151540317

3.修改远程调用的代码

image-20240530172715647

4.启动,测试

image-20240530152338275

感谢各位读者的阅读,本文章有任何错误都可以在评论区发表你们的意见,我会对文章进行改正的。如果本文章对你有帮助请动一动你们敏捷的小手点一点赞,你的每一次鼓励都是作者创作的动力哦!😘


http://www.kler.cn/news/282935.html

相关文章:

  • 低代码技术:简化应用开发,推动数字化转型
  • 树莓派4B安装golang最新版(20210520)
  • 代理IP设置白名单:让你的网络更安全高效
  • 今日算法:蓝桥杯基础题之“切面条”
  • AI学习指南深度学习篇-长短时记忆网络的调参和优化
  • uni-app的示例项目--简单的登陆页面及列表页面
  • 分享5款支持论文写作网站先稿后付的网站!
  • 构建基于I2C与UART通信的智能嵌入式机械臂抓取系统,结合OpenCV技术进行高效物体识别与动作控制的综合解决方案(代码示例)
  • CSS 中高度 100%和高度 100vh 有什么区别
  • 【STM32】定时器
  • leetcode46:全排列
  • 自动化测试员的职业前景
  • 【考研数学】如何实现高效刷题?怎么刷题?
  • 【Pytorch】生成对抗网络实战
  • 切片上传记录
  • Centos 添加双网卡 (生产环境配置记录)
  • 【区块链 + 司法存证】印记区块链电子印章 | FISCO BCOS应用案例
  • BERT:Pre-training of Deep Bidirectional Transformers forLanguage Understanding
  • centOS安装R语言4.0及以上
  • 少走弯路,ESP32 读取Micro SD(TF)播放mp3的坑路历程。
  • QGraphicsView类介绍
  • MySQL迁移到ClickHouse
  • Docker 基本命令
  • [windows][软件]Windows平台MongoDB的安装
  • 【机器学习】线性回归正则化的概念、三种正则化方法的优缺点、使用场景以及在python中的实例
  • 关于武汉芯景科技有限公司的MCU监控芯片XJ809S开发指南(兼容MAX809S)
  • <数据集>手部识别数据集<目标检测>
  • Qt WebSocket
  • 【论文阅读】YOLOv10: Real-Time End-to-End Object Detection
  • SQL 简易建库和增删改查