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

WHAT - 简单服务发现

文章目录

  • 简单理解
  • 举个例子
  • 简单服务发现方式
    • 1. 静态配置(最简单,但不灵活)
    • 2. DNS 发现
    • 3. 使用服务注册中心(稍高级)
  • 总结

“简单服务发现”(Simple Service Discovery)通常指的是一种让系统中的服务自动找到彼此的机制,特别在 微服务架构分布式系统 中非常常见。

简单理解

服务发现就像一个“电话本”或“联系人列表”,让服务A知道如何找到服务B,而不需要硬编码IP或端口。

举个例子

假设你有两个服务:

  • 用户服务(User Service)
  • 订单服务(Order Service)

订单服务需要请求用户服务的数据,但用户服务的 IP 地址可能会变化(比如在容器环境中重启后)。

这时候就需要 服务发现系统 来告诉订单服务:“用户服务现在在这里”。

简单服务发现方式

1. 静态配置(最简单,但不灵活)

直接在配置文件里写死服务的地址:

userService: http://192.168.1.10:8080

缺点:服务 IP 变了就要手动更新。

2. DNS 发现

服务注册在一个域名下,通过 DNS 查找:

curl http://user-service.default.svc.cluster.local

常用于 Kubernetes。

3. 使用服务注册中心(稍高级)

服务启动时自动向注册中心注册自己的地址:

  • 注册中心:Consul、Eureka、etcd、Zookeeper

  • 查询流程:

    1. 服务A向注册中心注册:我在 10.0.0.1:8080
    2. 服务B查询注册中心:用户服务在哪?
    3. 注册中心返回地址:10.0.0.1:8080

这种方式可以动态感知服务上下线,更适合大型系统。

总结

类型描述适合场景
静态配置写死服务地址小型项目、测试
DNS 服务发现通过服务名称解析Kubernetes 等平台
注册中心服务发现服务自动注册和发现微服务架构、大型系统
http://www.xdnf.cn/news/4924.html

相关文章:

  • 【Bootstrap V4系列】学习入门教程之 组件-表单(Forms)
  • kuka, fanuc, abb机器人和移动相机的标定
  • 03 mysql 连接
  • 使用FastAPI微服务在AWS EKS中构建上下文增强型AI问答系统
  • Istio in action之Envoy Proxy详解
  • React 中二次封装组件时,实现 属性透传、事件透传、插槽透传和 ref 透传
  • iOS App 安全性探索:源码保护、混淆方案与逆向防护日常
  • 互联网大厂Java求职面试:基于RAG的智能问答系统设计与实现
  • 4.1【LLaMA-Factory 实战】医疗领域大模型:从数据到部署的全流程实践
  • clahe算法基本实现
  • Linux 环境通过 tar 多线程压缩和解压
  • 护城河理论——AI与思维模型【100】
  • 5级李克特量表:量化态度的黄金标准
  • 生信服务器如何安装cellranger|生信服务器安装软件|单细胞测序软件安装
  • ndarray数组掩码操作,True和False获取数据
  • vue3: pdf.js5.2.133 using typescript
  • Windows 10 无法启动或黑屏的修复指南(适用于更新失败或磁盘故障)
  • javascript 补充的一些知识点
  • HarmonyOS学习——ArkTS与TS的关系
  • ArcScroll: 弧形滑动控件
  • 初等数论--欧拉函数积性的证明
  • Uniapp Android/IOS 获取手机通讯录
  • 【Linux】自定义shell的编写
  • vllm的技术核心、安装流程和使用教程,以及注意事项
  • 自主独立思考,帮我创造新的方法:vue3 script setup语法中,组件传递值我觉得有些复杂,帮我创造一种简单的方法容易写的方法?
  • 使用Java实现HTTP协议服务:从自定义服务器到内置工具
  • 数据加密方式(对称加密/非对称加密 /数字签名/证书)
  • vue项目的创建
  • 字符串---Spring字符串基本处理
  • 耳机插进电脑只有一边有声音怎么办 解决方法分享