eureka

eureka源码系列

孤人 提交于 2020-08-14 02:15:57
eureka源码系列 - 配置类 @Author:zxw @email: 502513205@qq.com @school:吉首大学 1.前言 对于我们刚学习eureka入门教程的同学来说,最常做的就是在配置文件上填写eureka相关参数信息,然后配合一个注解就成功启动了eureka服务,所以了解eureka的配置文件相关参数以及默认值也是非常重要的,就让我们一起打开源码看看 2.面试题 最近我在面试一家公司的时候,因为简历上有写springcloud微服务的项目,所以也问了我一些eureka相关面试题,因为是应届生所以总的来说难度挺低。 eureka的尝试重连次数是多少 // --answer eureka的每隔多少秒会发送一次心跳 // --answer eureka满足CAP中的哪两个 // --answer 3.源码解析 话不多说,直接告诉你eureka的配置类为 EurekaClientConfigBean 该类实现了EurekaClientConfig和Order接口,在EurekaClientConfig接口中定义了一些获取字段值以及区域等其他方法。可以看到该类被 @ConfigurationProperties 注解修饰,如果我们有需要自定义yml配置的,也可以使用该注解修饰。 所使用的前缀为eureka.client,该值定义在PREFIX字段中 默认地址为:

微服务-各种pom的配置和注解

天涯浪子 提交于 2020-08-13 23:11:51
标准spring-boot应用 pom.xml配置 <? xml version="1.0" encoding="UTF-8" ?> < project xmlns ="http://maven.apache.org/POM/4.0.0" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation ="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion > 4.0.0 </ modelVersion > < parent ><!-- 这里就是使用的spring-boot版本 --> < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-parent </ artifactId > < version > 1.3.7.RELEASE </ version > <!-- 这里就根据使用的版本来自定义 --> < relativePath /> <!-- lookup parent from repository --> </ parent > <

使用Gateway自定义负载均衡过滤器

眉间皱痕 提交于 2020-08-13 19:48:44
背景 最近项目中需要上传视频文件,由于视频文件可能会比较大,但是我们应用服务器tomcat设置单次只支持的100M,因此决定开发一个分片上传接口。 把大文件分成若干个小文件上传。所有文件上传完成后通过唯一标示进行合并文件。 我们的开发人员很快完成了开发,并在单元测试中表现无误。上传代码到测试环境,喔嚯!!!出错了。 经过一段时间的辛苦排查终于发现问题,测试环境多实例,分片上传的接口会被路由到不同的实例,导致上传后的分片文件在不同的机器,那么也就无法被合并。 知道了原因就好解决,经过一系列的过程最终决定修改网关把uuid相同的请求路由到相同的实例上,这样就不会出错了! 准备 由于是公司代码不方便透露,现使用本地测试代码。 准备:Eureka注册中心,Gateway网关,测试微服务 启动后服务如下两个测试的微服务,一个网关服务 gateway版本 < spring-cloud.version > Greenwich.SR2 </ spring-cloud.version > < spring-boot.version > 2.1.6.RELEASE </ spring-boot.version > 此处就说下我网关的配置。 #网关名 spring.cloud.gateway.routes [ 0 ] .id = route-my-service-id #网关uri,lb代表负载均衡

掌门教育微服务体系 Solar | 阿里巴巴 Nacos 企业级落地上篇

本小妞迷上赌 提交于 2020-08-13 15:40:41
联席作者:吴毅挺 任浩军 张彬彬 廖梦鸽 张金星 胡振建 郑重鸣谢:Nacos - 彦林,Spring Cloud Alibab - 小马哥、落夜,Nacos 社区 - 张龙(pader)、春少(chuntaojun) 前言 在高速发展的时候,公司规模越来越大,老师人数越来越多,这时候公司不能铺太多人去做运营与服务,必须提高每个人效,这就需要技术驱动。因此掌门教育转变成一家技术驱动型的公司,如果被迫成为一家靠资金驱动的公司就活不下去了。 -- 张翼(掌门教育创始人兼 CEO) 掌门教育自 2014 年正式转型在线教育以来,秉承“让教育共享智能,让学习高效快乐”的宗旨和愿景,经历云计算、大数据、人工智能、 AR / VR / MR 以及现今最火的 5G ,一直坚持用科技赋能教育。掌门教育的业务近几年得到了快速发展,特别是今年的疫情,使在线教育成为了新的风口,也给掌门教育新的机遇。 随着业务规模进一步扩大,流量进一步暴增,微服务数目进一步增长,使老的微服务体系所采用的注册中心 Eureka 不堪重负,同时 Spring Cloud 体系已经演进到第二代,第一代的 Eureka 注册中心已经不大适合现在的业务逻辑和规模,同时它目前被 Spring Cloud 官方置于维护模式,将不再向前发展。如何选择一个更为优秀和适用的注册中心,这个课题就摆在了掌门人的面前。经过对 Alibaba

微服务应用开发入门③微服务组件eureka、ribbon、feign和hystrix初识

流过昼夜 提交于 2020-08-13 12:35:53
注册中心--Eureka 相信通过 微服务应用开发入门①web端架构演进 童鞋已经大概知道注册中心的概念和它是做什么的; Eureka是Netflix开源的一款提供服务注册和发现的产品,它提供了完整的Service Registry和Service Discovery实现。 那我们还必须搞明白一些概念(当然其他概念还有很多很多) Register: 服务注册 服务的提供者,将自身注册到注册中心,服务提供者也是一个 Eureka Client。当 Eureka Client 向 Eureka Server 注册时,它提供自身的元数据,比如 IP 地址、端口,运行状况指示符 URL,主页等。 Renew: 服务续约 Eureka Client 会每隔 30 秒发送一次心跳来续约。 通过续约来告知 Eureka Server 该 Eureka Client 运行正常,没有出现问题。 默认情况下,如果 Eureka Server 在 90 秒内没有收到 Eureka Client 的续约,Server 端会将实例从其注册表中删除,此时间可配置,一般情况不建议更改 负载均衡 负载均衡是我们处理高并发、缓解网络压力和进服务端扩容的重要手段之一。 一般情况下我们所说的负载均衡通常都是指服务端负载均衡。 服务端负载均衡又分为两种,一种是硬件负载均衡,还有一种是软件负载均衡。 客户端负载均衡

WAIC·开发者年度盛会上线:AI开发者做主角,最纯粹最顶尖技术大会

天大地大妈咪最大 提交于 2020-08-12 14:08:41
     世界人工智能大会 2020 线上活动以「智联世界 共同家园」为主题,致力于打造世界顶尖人工智能合作交流平台,推动和主导人工智能产业和技术创新融合发展,大会将于 7 月 9 日-11 日在线上举办。    世界人工智能大会开发者日(以下简称为 WAIC·开发者日)作为大会主题论坛及特色活动,由世界人工智能大会组委会主办,机器之心和上海交通大学人工智能研究院共同承办,是 WAIC 期间唯一面向 AI 开发者的专业活动,旨在打造人工智能领域年度最高规格、最专业、最具影响力的开发者盛会 ,为企业展示 AI 技术品牌实力、传播自身技术与平台、构建人工智能开发者生态提供最佳展示平台。本届开发者日包含系列活动 10 余场,邀请重磅嘉宾 100 余位,将有近 200 家媒体进行宣传推广,并覆盖数万名技术从业者受众。    WAIC·开发者日模块:狂欢不停歇   WAIC·开发者日将在 7 月 9 日-11 日举办 1 场主论坛、多场分论坛、及高峰对话、黑客松等活动,呈现人工智能技术分享盛宴。期间也将进行上海白玉兰开源开放研究院揭牌,发布《人工智能开源开放报告》、WAIC 人工智能青年技术人才奖。    WAIC·开发者日特色    影响面覆盖广 :预计全网传播覆盖将超过千万人次。前期将联合百余家媒体进行多维度报道宣传,7 月 9 日-11 日除了通过 WAIC 官方平台直播

掌门教育微服务体系Solar第3弹:Nacos企业级落地下篇

泪湿孤枕 提交于 2020-08-12 08:59:40
联席作者:谢璐 谢庆芳 伊安娜 任浩军<br />郑重鸣谢:Nacos - 彦林,Spring Cloud Alibaba - 小马哥、洛夜,Nacos 社区 - 张龙(pader)、春少(chuntaojun) 相关文章推荐: 掌门教育微服务体系 Solar | 阿里巴巴 Nacos 企业级落地上篇 掌门教育微服务体系 Solar | 阿里巴巴 Nacos 企业级落地中篇 前言 在高速发展的时候,公司规模越来越大,老师人数越来越多,这时候公司不能铺太多人去做运营与服务,必须提高每个人效,这就需要技术驱动。因此掌门教育转变成一家技术驱动型的公司,如果被迫成为一家靠资金驱动的公司就活不下去了。 -- 张翼(掌门教育创始人兼CEO) 掌门教育自2014年正式转型在线教育以来,秉承“让教育共享智能,让学习高效快乐”的宗旨和愿景,经历云计算、大数据、人工智能、 AR / VR / MR 以及现今最火的 5G ,一直坚持用科技赋能教育。掌门教育的业务近几年得到了快速发展,特别是今年的疫情,使在线教育成为了新的风口,也给掌门教育新的机遇。 随着业务规模进一步扩大,流量进一步暴增,微服务数目进一步增长,使老的微服务体系所采用的注册中心 Eureka 不堪重负,同时 Spring Cloud 体系已经演进到第二代,第一代的 Eureka 注册中心已经不大适合现在的业务逻辑和规模,同时它目前被

Hystrix的使用5-监控页面dashboard

折月煮酒 提交于 2020-08-12 08:39:23
Hystrix的使用5-监控页面dashboard 1.简介 Hystrix仪表板可以实时监视Hystrix指标。可以查看Hystrix服务是否处于熔断状态等等。 2.代码实现 2.1 被监控工程代码增加代码 这里我们监控cloud-provider-payment-hystrix8001服务提供者类,需要在服务提供者启动类PaymentHystrixStart8001中加入以下方法,将监控地址修改 http://127.0.0.1:8001/hystrix.stream 。 /** * 给Hystrix Dashboard指定当前工程的监控路径为:http://127.0.0.1:8001/hystrix.stream * @return */ @Bean public ServletRegistrationBean getServlet(){ HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet(); ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet); registrationBean.setLoadOnStartup(1); registrationBean

2020Java面试题及答案,命中率高达90%

▼魔方 西西 提交于 2020-08-12 07:33:34
这份资源我自己历经三年才整理归类出来,现在免费分享给大家; 面试题有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合。 面试题以及答案,已经整理成PDF电子书形式打包在网盘; 面试题领取微信扫一扫,加好友请备注“博客园面试题”; 目录 上海-携程-Java高级面试题.pdf 北京-百度-Java中级面试题.pdf 深圳-乐信-Java高级面试题.pdf 深圳-腾讯-Java高级面试题.pdf 上海-拼多多-Java高级面试题.pdf 深圳-OPPO-Java高级面试题.pdf 上海-拼多多-Java高级面试题.pdf 北京-京东-Java实习生面试题.pdf 北京-京东-Java实习生面试题.pdf 杭州-阿里云Java实习生面试题.pdf 南京-软通动力-Java初级面试题.pdf 深圳-银盛支付-Java中级面试题.pdf 深圳-中国平安-Java中级面试题.pdf 深圳-蚂蚁金服-Java高级面试题.pdf 深圳-丰巢科技-Java高级面试题.pdf 深圳-商汤科技-Java高级面试题.pdf 厦门-中软国际-Java初级面试题.pdf 杭州-蚂蚁金服-Java高级面试题.pdf 杭州-蚂蚁金服-资深工程师面试题.pdf 广州唯品会-Java大数据开发工程师面试题.pdf 上海-携程

7张图了解 Spring Cloud 的整体构架!

 ̄綄美尐妖づ 提交于 2020-08-12 05:40:37
Spring Cloud整体核心架构只有一点:Rest服务,也就是说在整个Spring Cloud配置过程之中,所有的配置处理都是围绕着Rest完成的,在这个Rest处理之中,一定要有两个端:服务的提供者(Provider)、服务的消费者(Consumer),所以对于整个Spring Cloud基础的结构就如下所示。 SpringCloud基础架构 既然Spring Cloud的核心是Restful结构,那么如果要想更好的去使用Rest这些微服务还需要考虑如下几个问题。 1、所有的微服务地址一定会非常的多,所以为了统一管理这些地址信息,也为了可以及时的告诉用户哪些服务不可用,所以应该准备一个分布式的注册中心,并且该注册中心应该支持有HA机制,为了高速并且方便进行所有服务的注册操作,在Spring Cloud里面提供有一个Eureka的注册中心。 微服务结构图 2、对于整个的WEB端的构架(SpringBoot实现)可以轻松方便的进行WEB程序的编写,而后利用Nginx或Apache实现负载均衡处理,但是你WEB端出现了负载均衡,那么业务端呢?应该也提供有多个业务端进行负载均衡。那么这个时候就需要将所有需要参与到负载均衡的业务端在Eureka之中进行注册。 多业务端-负载均衡 在进行客户端使用Rest架构调用的时候,往往都需要一个调用地址,即使现在使用了Eureka作为注册中心