eureka

SpringCloud之Ribbon

主宰稳场 提交于 2020-07-28 07:53:05
SpringCloud通过Ribbon实现负载均衡。 一、添加Maven依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-ribbon</artifactId> </dependency> 二、application.yml配置 eureka: client: serviceUrl: defaultZone: http: // localhost:8761/eureka/ server: port: 8765 spring: application: name: blog -ribbon-client 三、主类编写

Redis哨兵

为君一笑 提交于 2020-07-28 04:02:50
博主之前写了一篇Redis哨兵搭建,并没有对哨兵进行讲解,本篇填坑。 同时,也为博主写Redis分布式锁(二)做一些前置知识。 挖坑位置: Redis集群搭建(哨兵) Redis主从 在讲redis哨兵前,需要先简单讲解一下redis主从。 俗话说,鸡蛋放在一个篮子里容易碎,那就把鸡蛋复制一份,放到其他篮子里。所有的高可用基本都是这个思路。 上一篇文章讲主从配置的时候,讲到一个配置属性slaveof # 这个配置是redis-1中没有的,需要在redis-2中新增 # 这里的IP是redis-1的IP地址,端口是redis-1 6379.conf配置文件中port的值,默认值是6379 slaveof 1.1.1.1 6379 这个属性就是配置redis主从的。 这里分析以下上面这张图,可以发现以下几个特点 客户端可以从三个redis中读取数据 只有主库可以写入数据(抱歉,这个没有在图中体现) 两个从库从主库中读取数据 这种redis架构解决了以下问题 主库宕机,仍然可以在从库中读取数据,一定程度上提高了可用性 如果三个redis运行正常,数据应该一致 读取的压力分担到了3个节点上 存在以下几个问题 主库宕机,不能写入 主库不能自动切换,需要手动切换 ※主库写入数据成功,还没来得及同步到从库,主库宕机 基于以上的一些问题,我们引出了redis哨兵 Redis哨兵

SpringCloud之Zuul

天大地大妈咪最大 提交于 2020-07-28 03:30:33
使用SpringCloud Zuul实现网关代理。 一、Maven依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-zuul</artifactId> </dependency> 二、编写配置(application.yml) eureka: client: serviceUrl: defaultZone: http: // localhost:8761/eureka/ server: port: 8769 spring: application: name: blog -zuul- client zuul:

Spring Cloud 微服务架构的五脏六腑

大兔子大兔子 提交于 2020-07-28 01:35:29
Spring Cloud 是一个基于 Spring Boot 实现的微服务框架,它包含了实现微服务架构所需的各种组件。 注:Spring Boot 简单理解就是简化 Spring 项目的搭建、配置、组合的框架。因为与构建微服务本身没有直接关系,所以本文不对 Spring Boot 进行展开。 另外本文有一些例子涉及到 Spring 和 Spring Boot,建议先了解一下 Spring 和 Spring Boot 再阅读本文。 本文的阅读对象主要是没有接触过服务架构,想对其有一个宏观的了解的同学。 本文将从 Spring Cloud 出发,分两小节讲述微服务框架的「五脏六腑」: 第一小节「服务架构」旨在说明的包括两点,一服务架构是什么及其必要性;二是服务架构的基本组成。为什么第一节写服务架构而不是微服务架构呢?原因主要是微服务架构本身与服务架构有着千丝万缕的关系,服务架构是微服务架构的根基。 第二小节「五脏六腑」则将结合 Spring Cloud 这个特例来介绍一个完整的微服务框架的组成。 「服务架构」 为了方便理解,我先讲一个小故事:(改编自一知乎答主) Martin(微服务提出者也叫 Martin)刚来到公司时是一个基层员工,它上面有经理、老板,那个时候所有人都听老板的指挥。 但是过了两年,公司的人越来越多,原来的模式下整个公司的运作效率太低,管理也很混乱。

Spring Cloud Gateway VS Zuul 比较,怎么选择?

為{幸葍}努か 提交于 2020-07-27 22:30:48
Spring Cloud Gateway 是 Spring Cloud Finchley 版推出来的新组件,用来代替服务网关:Zuul。 那 Spring Cloud Gateway 和 Zuul 都有哪些区别呢,咱们来比较一下。 1、开源组织 Spring Cloud Gateway 是 Spring Cloud 微服务平台的一个子项目,属于 Spring 开源社区,依赖名叫:spring-cloud-starter-gateway。 https://spring.io/projects/spring-cloud-gateway Zuul 是 Netflix 公司的开源项目,Spring Cloud 在 Netflix 项目中也已经集成了 Zuul,依赖名叫:spring-cloud-starter-netflix-zuul。 https://github.com/Netflix/zuul 2、底层实现 https://stackoverflow.com/questions/47092048/how-is-spring-cloud-gateway-different-from-zuul 据 Spring Cloud Gateway 原作者的解释: Zuul构建于 Servlet 2.5,兼容 3.x,使用的是阻塞式的 API,不支持长连接,比如 websockets。另外

SpringCloud之服务注册中心和提供者(Eureka Server和Eureka Client)

跟風遠走 提交于 2020-07-27 22:04:59
一、使用Eureka Server搭建服务注册中心 1.Maven依赖 <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> </dependencies> 2.配置文件(application.yml) server: port: 8761 eureka: evictionIntervalTimerInMs: 6000 instance: hostname: localhost client: registerWithEureka: false fetchRegistry: false serviceUrl: defaultZone: http: // ${eureka.instance.hostname}:${server.port}/eureka/ spring: application: name: blog -eureka-server 3.启动类 package com.springcloud.blog; import org.springframework.boot.SpringApplication; import

SpringCloud之Feign

做~自己de王妃 提交于 2020-07-27 15:01:35
以我个人写的博客系统为例,请求其它微服务API。 一、添加Maven依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> 二、启动类增加@EnableFeignClients package com.springcloud.blog; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.cloud.openfeign.EnableFeignClients; @SpringBootApplication @EnableEurekaClient @EnableFeignClients public class BlogAdminApplication { public static void main

Jenkins Pipeline 部署 SpringBoot 应用

六月ゝ 毕业季﹏ 提交于 2020-07-27 13:51:28
一. 安装依赖包 yum install -y wget yum install -y gcc-c++ yum install -y zlib-devel perl-ExtUtils-MakeMaker yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker yum install -y openssh-clients yum install -y fontconfig 二. 环境准备 1.安装JAVA环境 yum -y install java-1.8.0-openjdk #检测是否安装成功 java -version 修改/etc/profile文件,添加JAVA_HOME vi /etc/profile 在文件的最后面,加上以下代码 export JAVA_HOME=/java/jdk1.8.0_171 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH 在执行完保存过后,必须执行以下source /etc/profile

SpringCloud之Config

▼魔方 西西 提交于 2020-07-27 13:02:22
配置中心,也就是SpringCloud中的Config组件,主要应用在哪些方面? 配置文件方便维护 配置文件内容安全和权限 更新项目配置不需要重启 本文主要围绕两个方面,一个是Config Server,另一个是Config Client。还是以我个人博客系统其中的一个模块为例。 一、搭建Config Server 1.Maven依赖 <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency> </dependencies> 2.添加主类 package

springcloud 微服务 分布式 学习

纵然是瞬间 提交于 2020-07-27 06:31:35
一、什么是springcloud,有什么作用   Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。 Spring Cloud是一个全家桶式的技术栈,包含了很多组件。实例 www.b123.com 。先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka、Ribbon、Feign、Hystrix、Zuul这几个组件。 Eureka Eureka是微服务架构中的注册中心,专门负责服务的注册与发现。库存服务、仓储服务、积分服务中都有一个Eureka Client组件,Eureka Client这个组件专门负责将这个服务的信息注册到Eureka Server中(就是告诉Eureka Server,自己在哪台机器上,监听着哪个端口)。而Eureka Server是一个注册中心,里面有一个注册表,保存了各服务所在的机器和端口号。 订单服务里也有一个Eureka Client组件,这个Eureka Client组件会找Eureka Server问一下:库存服务在哪台机器啊?监听着哪个端口啊?仓储服务呢?积分服务呢?然后就可以把这些相关信息从Eureka