该项目通过自动配置为Spring Boot应用程序提供Netflix OSS集成,并绑定到Spring环境和其他Spring编程模型成语。通过几个简单的注释,您可以快速启用和配置应用程序中的常见模式,并通过经过测试的Netflix组件构建大型分布式系统。提供的模式包括服务发现(Eureka),断路器(Hystrix),智能路由(Zuul)和客户端负载平衡(Ribbon)。Spring Cloud大型企业分布式微服务云架构源码请加企鹅求求一七九一七四三三八零

服务发现:Eureka客户端

服务发现是基于微服务架构的关键原则之一。尝试配置每个客户端或某种形式的约定可能非常困难,可以非常脆弱。Netflix服务发现服务器和客户端是Eureka。可以将服务器配置和部署为高可用性,每个服务器将注册服务的状态复制到其他服务器。

如何包含Eureka客户端

要在您的项目中包含Eureka客户端,请使用组org.springframework.cloud和工件ID spring-cloud-starter-eureka的启动器。有关使用当前的Spring Cloud发布列表设置构建系统的详细信息。

注册Eureka

当客户端注册Eureka时,它提供关于自身的元数据,例如主机和端口,健康指示符URL,主页等。Eureka从属于服务的每个实例接收心跳消息。如果心跳失败超过可配置的时间表,则通常将该实例从注册表中删除。

示例eureka客户端:

@Configuration
@ComponentScan
@EnableAutoConfiguration
@EnableEurekaClient
@RestController
public class Application {@RequestMapping("/")public String home() {return "Hello world";}public static void main(String[] args) {new SpringApplicationBuilder(Application.class).web(true).run(args);}}
复制代码

(即完全正常的Spring Boot应用程序)。在这个例子中,我们明确地使用@EnableEurekaClient,但只有Eureka可用,你也可以使用@EnableDiscoveryClient。需要配置才能找到Eureka服务器。例:

application.ymleureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/
复制代码

其中“defaultZone”是一个魔术字符串后备值,为任何不表示首选项的客户端提供服务URL(即它是有用的默认值)。

从Environment获取的默认应用程序名称(服务ID),虚拟主机和非安全端口分别为{spring. application. name}和${server.port}。

@EnableEurekaClient将应用程序同时进入一个Eureka“实例”(即注册自己)和一个“客户端”(即它可以查询注册表以查找其他服务)。实例行为由eureka.instance.*配置键驱动,但是如果您确保您的应用程序具有 spring. application. name (这是Eureka服务ID或VIP的默认值),那么默认值将是正常的。

转载于:https://juejin.im/post/5c7c7d4b6fb9a049a8200ba0

spring cloud构建互联网分布式微服务云平台- Netflix相关推荐

  1. spring cloud构建互联网分布式微服务云平台-消息总线

    Spring Cloud Bus除了支持RabbitMQ的自动化配置之外,还支持现在被广泛应用的Kafka.在本文中,我们将搭建一个Kafka的本地环境,并通过它来尝试使用Spring Cloud B ...

  2. spring cloud构建互联网分布式微服务云平台-Spring Cloud Commons 普通抽象

    诸如服务发现,负载平衡和断路器之类的模式适用于所有Spring Cloud客户端可以独立于实现(例如通过Eureka或Consul发现)的消耗的共同抽象层.愿意了解源码的朋友直接求求交流分享技术一七九 ...

  3. spring cloud构建互联网分布式微服务云平台-docker部署spring cloud项目

    一.docker简介 Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机). ...

  4. spring cloud构建互联网分布式微服务云平台-断路器聚合监控(Hystrix Turbine)

    一.Hystrix Turbine简介 看单个的Hystrix Dashboard的数据并没有什么多大的价值,要想看这个系统的Hystrix Dashboard数据就需要用到Hystrix Turbi ...

  5. spring cloud构建互联网分布式微服务云平台-Ribbon

    一:Ribbon是什么? Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起.Ribbon客户端组件提供一系列完善的配置项如连接 ...

  6. spring cloud互联网分布式微服务云平台规划分析--spring cloud系统管理平台

    1.介绍 鸿鹄云架构[系统管理平台]是一个大型企业.分布式.微服务.云架构的JavaEE体系快速研发平台,基于模块化.微服务化.原子化.热部署的设计思想,使用成熟领先的无商业限制的主流开源技术构建. ...

  7. spring cloud互联网分布式微服务云平台规划分析--服务统一配置中心

    1.介绍 鸿鹄云架构[服务统一配置中心]为分布式系统中的外部配置提供服务器和客户端支持.使用commonservice-config,可以在所有环境中管理应用程序的外部属性.应用程序可通过从开发人员到 ...

  8. 互联网分布式微服务云平台规划分析--服务监控中心

    1.介绍 鸿鹄云架构[服务监控中心]提供简洁的可视化WEB UI,来管理 Spring Cloud 微服务应用程序. 2.平台基础功能 服务在线状态监控.Logging日志级别管理.JMX beans ...

  9. 互联网分布式微服务云平台规划分析--SSO单点登录系统

    介绍 鸿鹄云架构[SSO单点登录系统]为所有微服务提供统一的用户认证服务,系统本身属于微服务模式,使用JWT+Redis分布式存储方案,确保不同微服务.系统之间的安全通讯和统一用户校验.认证.在整个服 ...

最新文章

  1. 网站优化之各个页面的关键词密度的把控
  2. AVL树和红黑树区别
  3. mysql查询各科前3_MySQL 查询各科前三的数据
  4. Qt 检测第三方软件是否运行、杀死第三方进程
  5. 周记随笔-php5.6与apache2.4的windows32安装
  6. ubuntu安装jdk
  7. Input标签牲描述
  8. HDU 3911 Black And White(线段树区间合并+lazy操作)
  9. js字符串编码和unicode编码互转
  10. Mac终端查看MD5/SHA1/SHA256
  11. 解构网约车界“拼多多”:花小猪背后的商业逻辑和价值空间
  12. Vray材质学习笔记06——铝金属材质
  13. 蓝桥杯 带分数 By Assassin
  14. 红米充电短路 红米note3充电短路 无法充电
  15. 地雷復 (易經大意 韓長庚)
  16. Proteus+VSPD实现仿真stm32虚拟串口
  17. VC中三种常见中文内码的转换方法(GB2312/GBK/BIG5)
  18. 针对各组的意见,除评论员外的四个人的反思和改进
  19. 飞控地面站MissionPlanner界面修改------MainV2界面添加控件并动态刷新数据
  20. 使用matlab设计IIR巴特沃斯低通滤波器

热门文章

  1. java.util.zip 用法,Java压缩文件工具类ZipUtil使用方法代码示例
  2. MySql视图view的使用:创建、修改、删除
  3. SpringBoot实战(六):Redis Pipeline 轻松实现百倍性能提升
  4. 多线程(一):初识多线程
  5. Nature封面引发持续热议,死亡猪脑恢复部分功能可实现永生?官方答疑来了
  6. 三星1万亿元重金下注,推动AI、5G、半导体等项目的研究
  7. 前端利器!让AI根据手绘原型生成HTML | 教程+代码
  8. 解释stateless worker
  9. 如何用PyTorch训练图像分类器
  10. 情怀也好,相声也好,请拿产品说话!