文档章节

SpringCloud 微服务 (二) Eureka (Server)

___大侠
 ___大侠
发布于 06/14 18:29
字数 1147
阅读 10
收藏 7
点赞 0
评论 0

微服务是一种架构风格,设计思想

特点    ① 由一系列微小的服务组成

           ② 运行独立,互不干扰

           ③ 独立部署

           ④ 每个微小的服务都有自己的业务实现

           ⑤ 各自独立分散服务管理-->分布式管理

 

单体架构: 测试的时候在一起,容易测试,部署的时候就一个war包,这种架构开发效率受到影响,当应用越来越大的时候,维护起来比较麻烦,改动应用小bug需要重新整体部署,部署一次也可能需要很长的时间,模块性能扩展有限

 

服务注册发现: 注册方提供信息, 服务方通过注册方的信息, 发现注册服务;

服务网关: 除了服务的信息交互,还需要与外界进行交互,所以需要暴露自己的服务,但也不能什么都暴露,就涉及到服务网关,网关可以过滤后端信息,前端配合需要路由控制引导微服务选择,因为所有的请求都会经过网关,所以还可以限流,容错,监控,日志,安全,防爬虫等等操作

后端服务,前端服务: 互相配合,完成服务的最简化业务实现. 比如后端服务提供A,B接口,前端服务可以根据业务场景拆分,聚合后端服务,将A,B合并返回或者拆分A中的一部分返回.

 

方案A: Spring全家桶 ...(本次,就决定是他了)

方案B: Dubbo服务,Zookeeper注册中心 ...

 

SpringCloud提供了微服务开发所需的配置,是一个开发工具集,有很多个子项目,开源框架

利用SpringBoot开发,方便, 基于Netflix开源组件封装,强大的微服务组件

总而言之SpringCloud简化了分布式开发,重要在理解分布式、架构特点以及组件

 

SpringCloud Eureka基于Netflix Eureka的封装,

主要两个组件: 注册中心(Eureka Server)、服务注册(Eureka Client)

 

Eureka Server 注册中心

注册中心记录服务信息,状态, 比如服务名字,运行的情况

 

创建E:/MyCloud文件夹,后续实践的应用都放在此处

利用IDEA的Spring Initializr构建一个SpringBoot项目,第一步

第二步,选择Cloud Discovery-Eureka Server,并且SpringBoot版本2.0.2

第三步,选择我的创建路径目录E:/MyCloud

第四步,创建好了,把不需要的文件删除掉,没用

右下角会提示说Add as Maven Project or Disable notification,

选择Add as Maven Project,加载一会就好了, 最后的目录展示 

如果觉得com.server.eureka不爽,不想叠在一起,可以按下图设置一下,

把Hide Empty Middle Packages的勾去掉

再启动类上加一个注解@EnableEurekaServer,标识他是EurekaServer注册中心

启动项目的时候会报一些错,先不管,访问一下localhost:8080,成功 如下

Instances currently registered with Eureka是注册服务列表

目前只有Server,还没有建立Client,所以是空的

 

回来看控制器报错的原因,关于@EnableEurekaServer注解

Cannot execute request on any known server

因为他虽然被标识为Server,但他自己同时也是Client,会心跳检测Server,没有找到报错

在application.yml文件中配置,顺便加个name,运行

spring:
  application:
    name: my first eureka

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/

每次不知道怎么配置的时候,可以Ctrl+左键,进入查看方法信息,或多或少可以知道点套路

这时候,服务中心 发现了自己,name为刚刚设置的my first eureka,默认Zone也替换掉了

 

经过上面的测试,回到服务中心,我们就想他做一件事就够了,不用又做服务中心,又做注册服务的,

所以在刚刚的yml文件中加一个配置register-with-eureka: false ,对于此eureka取消注册

spring:
  application:
    name: my first eureka

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/
    register-with-eureka: false

重启访问,就会发现没有注册服务了,OK完成

 

 

提示端口8080很常用,建议改一个,eureka的默认是8761

应用启动时,控制台有很多信息可以过目一下

--------------------------------------------------------------------------------------

© 著作权归作者所有

共有 人打赏支持
___大侠
粉丝 11
博文 23
码字总数 21098
作品 0
杭州
程序员
Spring Cloud-honghu Cloud分布式微服务云系统

简介 鸿鹄云Cloud是基于SpringCloud来封装的,是一系列框架的有序集合。利用Spring Boot的开发模式简化了分布式系统基础设施的开发,如服务发现、注册、配置中心、消息总线、负载均衡、断路器...

itcloud ⋅ 04/25 ⋅ 0

史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)

一、spring cloud简介spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等。它运行环...

方宏春 ⋅ 04/14 ⋅ 0

史上最简单的SpringCloud教程 | 第四篇:断路器(Hystrix)

在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。...

方宏春 ⋅ 04/14 ⋅ 0

Spring Cloud构建微服务架构服务注册与发现

Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、...

明理萝 ⋅ 06/11 ⋅ 0

SpringCloud-Eureka服务注册与发现组件

Eureka和Zookeeper很类似,它是SpringCloud框架中的服务注册及发现组件。所有的微服务在使用过程中会向Eureka进行注册,而后客户端利用Eureka获取服务的信息(即服务的发现)。虽然SpringClo...

Coding小聪 ⋅ 05/25 ⋅ 0

Spring Cloud构建微服务架构:服务消费(基础)

使用LoadBalancerClient 在Spring Cloud Commons中提供了大量的与服务治理相关的抽象接口,包括、这里我们即将介绍的等。对于这些接口的定义我们在上一篇介绍服务注册与发现时已经说过,Spr...

itcloud ⋅ 06/21 ⋅ 0

SpringCloud(二):注册中心Eureka

Eureka是Netflix开源的一款提供服务注册和发现的产品,它提供了完整的Service Registry和Service Discovery实现。也是springcloud体系中最重要最核心的组件之一。 背景介绍 服务中心 服务中心...

MyMineBug ⋅ 04/24 ⋅ 0

Eureka2.0集群 高可用的认证服务实现与搭建

Springboot-2.0.2.RELEASE Eureka认证后,服务注册失败问题。 随着近几年微服务架构和Docker容器概念的火爆,也会让Spring Cloud在未来越来越“云”化的软件开发风格中立有一席之地,尤其是在...

边鹏_尛爺鑫 ⋅ 05/28 ⋅ 7

Spring Cloud构建微服务架构服务消费基础

使用LoadBalancerClient 在Spring Cloud Commons中提供了大量的与服务治理相关的抽象接口,包括、这里我们即将介绍的等。对于这些接口的定义我们在上一篇介绍服务注册与发现时已经说过,Spr...

itcloud ⋅ 06/13 ⋅ 0

SpringCloud实战7-Config分布式配置管理

分布式环境下的统一配置框架,已经有不少了,比如百度的disconf,阿里的diamand 官方文档对spring Cloud Config的描述如下:   Spring Cloud Config为分布式系统中的外部配置提供服务器和客...

狂小白 ⋅ 05/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Linux中的端口大全

1 被LANA定义的端口 端口 名称 描述 1 tcpmux TCP 端口服务多路复用 5 rje 远程作业入口 7 echo Echo 服务 9 discard 用于连接测试的空服务 11 systat 用于列举连接了的端口的系统状态 13 d...

寰宇01 ⋅ 13分钟前 ⋅ 0

Confluence 6 如何备份存储文件和页面信息

备份的 ZIP 文件包含有 entities.xml,这个 XML 文件包含有 Confluence 的所有页面内容和存储附件的目录。 备份 Zip 文件结构 页面的附件是存储在附件存储目录中的,通过页面和附件 ID 进行识...

honeymose ⋅ 15分钟前 ⋅ 0

【每天一个JQuery特效】根据状态确定是否滑入或滑出被选元素

主要效果: 本文主要采用slideToggle()方法实现以一行代码同时实现以展开或收缩的方式显示或隐藏被选元素。 主要代码如下: <!DOCTYPE html><html><head><meta charset="UTF-8">...

Rhymo-Wu ⋅ 19分钟前 ⋅ 0

度量.net framework 迁移到.net core的工作量

把现有的.net framework程序迁移到.net core上,是一个非常复杂的工作,特别是一些API在两个平台上还不能同时支持。两个类库的差异性,通过人工很难识别全。好在微软的工程师们考虑到了我们顾...

李朝强 ⋅ 24分钟前 ⋅ 0

请不要在“微服务”的狂热中迷失自我!

微服务在过去几年一直是一个非常热门的话题(附录1)。何为“微服务的疯狂”,举个例子: 众所周知,Netflix在DevOps上的表现非常棒。Netfix可以做微服务。因此:如果我做微服务,我也将非常...

harries ⋅ 26分钟前 ⋅ 0

oAuth2 升级Spring Cloud Finchley.RELEASE踩坑分享

背景 6.19号,spring团队发布了期待已久的 Spring Cloud Finchley.RELEASE 版本。 重要变化: 基于Spring Boot 2.0.X 不兼容 Spring Boot 1.5.X 期间踩过几个坑,分享出来给大伙,主要是关于...

冷冷gg ⋅ 55分钟前 ⋅ 0

OSChina 周一乱弹 —— 理发师小姐姐的魔法

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @冰冰棒- :分享田馥甄的单曲《My Love》 《My Love》- 田馥甄 手机党少年们想听歌,请使劲儿戳(这里) @Li-Wang :哎,头发又长了。。。又要...

小小编辑 ⋅ 今天 ⋅ 8

Kafka1.0.X_消费者API详解2

偏移量由消费者管理 kafka Consumer Api还提供了自己存储offset的功能,将offset和data做到原子性,可以让消费具有Exactly Once 的语义,比kafka默认的At-least Once更强大 消费者从指定分区...

特拉仔 ⋅ 今天 ⋅ 0

NEO智能合约之发布和升级(二)

接NEO智能合约之发布和升级(一),我们接下来说说智能合约的升级功能。 一 准备工作 合约的升级需要在合约内预先设置好升级接口,以方便在升级时调用。接下来我们对NEO智能合约之发布和升级...

红烧飞鱼 ⋅ 今天 ⋅ 0

个人博客的运营模式能否学习TMALL天猫质量为上?

心情随笔|个人博客的运营模式能否学习TMALL天猫质量为上? 中国的互联网已经发展了很多年了,记得在十年前,个人博客十分流行,大量的人都在写博客,而且质量还不错,很多高质量的文章都是在...

原创小博客 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部