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

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 等平台
注册中心服务发现服务自动注册和发现微服务架构、大型系统

相关文章:

  • Java中的控制流语句:if、switch、for、foreach、while、do-while
  • Java+Selenium+快代理实现高效爬虫
  • qiankun微前端任意位置子应用
  • 工业与协议融合篇:如何将多个协议集成进一个系统?
  • 从韦斯利・卡普洛看北斗星咨询公司的技术咨询引领之路
  • 分布式ID设计 数据库主键自增
  • 智慧校园安全可视化指挥调度系统解决方案
  • Java设计模式之建造者模式:从入门到精通
  • 基于Java和GeoTools的根据矢量BBOx自动生成格网文件实践
  • WPF内嵌其他进程的窗口
  • 深入解析WPF中的3D图形编程:材质与光照
  • PostgreSQL技术大讲堂 - 第89讲:重讲数据库完全恢复
  • zst-2001 历年真题 设计模式
  • 227. 基本计算器 II
  • Java 原生实现代码沙箱(OJ判题系统第1期)——设计思路、实现步骤、代码实现
  • 线段树:数据结构中的超级英雄
  • 检查当前 Docker 使用的 默认运行时(default runtime)方法
  • LeetCode-双指针-盛最多水的容器
  • 部署Superset BI(四)连接sql server数据库
  • MSF 生成不同的木马 msfvenom 框架命令
  • 最快3天开通一条定制公交线路!上海推出服务平台更快响应市民需求
  • 家庭相册㉙在沪打拼25年,我理解了父母清晨去卖蜜饯的辛苦
  • 上交现场配乐4K修复版《神女》:默片巅峰有了新的打开方式
  • 视频丨习近平主席专机抵达莫斯科,俄战机升空护航
  • 网民反映“潜水时遭遇服务质量不佳”,三亚开展核查调查
  • 央行行长详解降息:将通过利率自律机制引导商业银行相应下调存款利率