架构
(引用Dubbo的架构:http://dubbo.io/User+Guide-zh.htm)

节点角色说明:

Provider: 暴露服务的服务提供方。
Consumer: 调用远程服务的服务消费方。
Registry: 服务注册与发现的注册中心。
Monitor: 统计服务的调用次调和调用时间的监控中心。
Container: 服务运行容器。
调用关系说明:

  1. 服务容器负责启动,加载,运行服务提供者。
  2. 服务提供者在启动时,向注册中心注册自己提供的服务。
  3. 服务消费者在启动时,向注册中心订阅自己所需的服务。
  4. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
  5. 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
  6. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

(1) 连通性:

注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小
监控中心负责统计各服务调用次数,调用时间等,统计先在内存汇总后每分钟一次发送到监控中心服务器,并以报表展示
服务提供者向注册中心注册其提供的服务,并汇报调用时间到监控中心,此时间不包含网络开销
服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,同时汇报调用时间到监控中心,此时间包含网络开销
注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外
注册中心通过长连接感知服务提供者的存在,服务提供者宕机,注册中心将立即推送事件通知消费者
注册中心和监控中心全部宕机,不影响已运行的提供者和消费者,消费者在本地缓存了提供者列表
注册中心和监控中心都是可选的,服务消费者可以直连服务提供者

(2) 健状性:

监控中心宕掉不影响使用,只是丢失部分采样数据
数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新服务
注册中心对等集群,任意一台宕掉后,将自动切换到另一台
注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯
服务提供者无状态,任意一台宕掉后,不影响使用
服务提供者全部宕掉后,服务消费者应用将无法使用,并无限次重连等待服务提供者恢复

(3) 伸缩性:

注册中心为对等集群,可动态增加机器部署实例,所有客户端将自动发现新的注册中心
服务提供者无状态,可动态增加机器部署实例,注册中心将推送新的服务提供者信息给消费者

服务发现组件的功能

服务注册表:

服务注册表是一个记录当前可用服务实例的网络信息数据库,是服务发现机制的核心。服务注册表提供查询API和管理API,使用查询API获得可用的服务实例,使用管理API实现注册和注销。

服务发现的方式

客户端发现

服务器端发现

(服务发现的可行方案以及实践案例)
http://blog.daocloud.io/microservices-4/

服务提供者

1)初始化项目

还没写完。。。

SpringCloud 服务注册与服务发现相关推荐

  1. 什么是微服务架构?什么是服务注册与服务发现?

    文章目录 基础名词 分布式 高可用 集群 什么是微服务 服务注册与服务发现 SpringCloud Alibaba 服务关系以及调用关系 服务注册中心 Nacos服务发现的领域模型 Nacos元数据 ...

  2. 如何理解服务注册和服务发现

    服务注册.服务注册表.服务发现 三者的关系是:通过服务注册机制将启动服务的信息上传至服务注册表,服务发现机制通过服务注册表实时获取可用服务的信息. 服务注册的方式包括:自注册和第三方注册.自注册的意思 ...

  3. NodeJs服务注册与服务发现实现

    前言 由于作者才刚开始学习NodeJs,水平实在有限,本文更像是一篇学习笔记,适合同刚开始学习NodeJs的朋友阅读. 服务治理 如果你的团队正在探索微服务的搭建,那么你们可能就在寻找一种机制,这个机 ...

  4. 微服务架构-实现技术之三大关键要素1服务治理:服务注册中心+服务发布与注册+服务发现与调用+服务监控

    目录 一.服务注册中心:注册中心核心功能+实现策略 1.注册中心核心功能 2.注册中心实现策略 二.服务发布与注册 三.服务发现与调用 四.服务监控 基本思路:日志埋点 基本目标: 基本定位: 基本策 ...

  5. 【Zookeeper】JAVA通过ZK实现服务注册和服务发现

    无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家.教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家.点这里可以跳转到教程. 服务化现在已经是个很成熟的概念 ...

  6. 小白入门微服务(4) - 服务注册与服务发现

    概述 前言 什么是服务注册.服务发现 两种服务注册方式 两种服务发现方式 常见的第三方注册工具 后记 前言 好一阵子没有更新了,有些小伙伴在后台问我有没有更新,看来大家还是挺喜欢看我的文章的嘛.主要是 ...

  7. 服务注册与服务发现中心

    1.基本原理 服务注册和服务发现中心各自有多台机器,保证高可用 服务器注册:就是将周期性将自己的ip和端口号提供给注册中心,注册中心维护了(服务名称,ip和端口号的列表)一个映射关系. 服务发现:调用 ...

  8. 深入了解服务注册与服务发现

    1. 什么是服务注册与发现 我们先来看下什么是服务注册与服务发现? 服务注册,就是将提供某个服务的模块信息(通常是这个服务的ip和端口)注册到1个公共的组件上去(比如: zookeeper\consu ...

  9. 微服务2——服务的注册,调用(Nacos服务注册中心+服务调用+调用负载均衡)sca-comsumersca-provider

    一.Nacos的安装和构建  以及启动 其官网地址如下: Nacos官网 1.安装前提: 第一:确保你电脑已配置JAVA_HOME环境变量(Nacos启动时需要),例如: 第二:确保你的MySQL版本 ...

  10. 引入springcloud报错。common依赖找不到_微服务架构:spring cloud之服务注册和服务发现...

    SpringCloud主要提供的模块包括:服务发现(Eureka),断路器(Hystrix),智能路有(Zuul),客户端负载均衡(Ribbon),Archaius,Turbine,Eureka为微服 ...

最新文章

  1. Pascal 错误代码及含义
  2. 朋友,别告诉我你懂分布式事务!
  3. BUAA_OO第三单元作业总结——JML
  4. 利用RobHess源码实现SIFT算法及RANSAC去错的图像特征提取匹配及去除错匹配
  5. 【学堂在线数据挖掘:理论方法笔记】第l六天(3.31)
  6. 番茄助手 VS2015
  7. eclipse如何装php插件,Eclipse PHP插件(PHPEclipse)安装与配置图解
  8. python海龟库函数大全_python海龟库的使用
  9. 【QT】利用QT做一个键盘检测的例子
  10. Android Studio —— java.lang.VerifyError: Verifier rejected class 问题解决
  11. RD Client远程控制PC
  12. 揭秘京东文件系统JFS的前世今生,支持双11每秒约10万个对象同时读写
  13. win10 安装 ad9
  14. 有时候要跌到谷底,才会慢慢变好
  15. UBT17:ubuntu安装NotePadqq
  16. 小米11系列详细参数对比,11青春版/11/11Pro/11Ultra
  17. SAP 能不能撤销已冲销的凭证?能的话怎么操作?
  18. Premiere 5 - 安装插件
  19. 计算机如何转金融,计算机要不要转金融,求大神支招!!!(转载)
  20. Redis集群搭建(多机集群)

热门文章

  1. 如何实现手机缓存清理的功能
  2. 绝地求生6月22号服务器维护中,绝地求生2019年5月22日维护到几点?吃鸡5月22日更新内容...
  3. Word设置页眉页脚技巧!
  4. 参数寻优问题详细解析
  5. 青龙面板之微信阅读 每日被动羊毛
  6. 书屋课程设计<java>
  7. mips中关于j跳转和b跳转
  8. 三星应用市场 提交不了
  9. mongodb数据同步到oracle_数据库周刊41丨9月数据库排行榜;2020 数据技术嘉年华…...
  10. APT34-Glimpse与DNS隧道问题