![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring Cloud构建微服务架构
小飞侠-2
我的github地址https://github.com/liujiekasini 欢迎大家分享讨论
展开
-
spring cloud: Hystrix断路器(熔断器)
1.Hystrix客户端Netflix已经创建了一个名为Hystrix的库,实现了断路器的模式。在microservice架构通常有多个层的服务调用。 低水平的服务的服务失败会导致级联故障一直给到用户。当调用一个特定的服务达到一定阈值(默认5秒失败20次),打开断路器。在错误的情况下和一个开启的断路回滚应可以由开发人员提供。 有一个断路器阻止级联失败并且允许关闭服务转载 2016-11-29 09:01:14 · 2531 阅读 · 0 评论 -
Spring Boot中使用RabbitMQ
很久没有写Spring Boot的内容了,正好最近在写Spring Cloud Bus的内容,因为内容会有一些相关性,所以先补一篇关于AMQP的整合。Message Broker与AMQP简介Message Broker是一种消息验证、传输、路由的架构模式,其设计目标主要应用于下面这些场景:消息路由到一个或多个目的地消息转化为其他的表现方式执行消息的聚集、消转载 2016-11-25 11:10:20 · 7633 阅读 · 1 评论 -
Spring Cloud源码分析(一)Eureka
看过之前文章的朋友们,相信已经对Eureka的运行机制已经有了一定的了解。为了更深入的理解它的运作和配置,下面我们结合源码来分别看看服务端和客户端的通信行为是如何实现的。另外写这篇文章,还有一个目的,还是希望鼓励大家能够学会学习和研究的方法,由于目前Spring Cloud的中文资料并不多,并不是大部分的问题都能找到现成的答案,所以其实很多问题给出一个科学而慎重的解答也都是花费研究者不少精力的。转载 2016-11-25 11:10:44 · 3677 阅读 · 0 评论 -
《微服务》九大特性重读笔记
服务组件化组件,是一个可以独立更换和升级的单元。就像PC中的CPU、内存、显卡、硬盘一样,独立且可以更换升级而不影响其他单元。在“微服务”架构中,需要我们对服务进行组件化分解。服务,是一种进程外的组件,它通过http等通信协议进行协作,而不是传统组件以嵌入的方式协同工作。服务都独立开发、部署,可以有效的避免一个服务的修改引起整个系统的重新部署。打一个不恰当的比喻,如果我们的转载 2016-11-25 11:11:08 · 589 阅读 · 0 评论 -
Spring Cloud构建微服务架构(六)高可用服务注册中心
近期因工作原因减缓了更新频率,同时为了把Spring Cloud中文社区搭建起来也费了不少时间,几乎每天都在挤牙膏般的凑时间出来做一些有意义的事。未能按原计划更新博文,在此对持续关注我博客的朋友们深表歉意。之前在写Spring Cloud系列文章的时候,列过一个较粗的计划,现在由于收到不少反馈和问题,因此准备做一些调整,先将一些大家关注较为集中的点拉出来写一些内容。今天这篇主要转载 2016-11-25 11:12:48 · 963 阅读 · 0 评论 -
Spring Boot中使用MyBatis注解配置详解
之前在Spring Boot中整合MyBatis时,采用了注解的配置方式,相信很多人还是比较喜欢这种优雅的方式的,也收到不少读者朋友的反馈和问题,主要集中于针对各种场景下注解如何使用,下面就对几种常见的情况举例说明用法。在做下面的示例之前,先准备一个整合好MyBatis的工程,可参见Spring Boot整合MyBatis,也可直接使用整合好的样例:Chapter3-2-7。传转载 2016-11-25 11:13:13 · 4769 阅读 · 1 评论 -
Spring Cloud构建微服务架构(五)服务网关
通过之前几篇Spring Cloud中几个核心组件的介绍,我们已经可以构建一个简略的(不够完善)微服务架构了。比如下图所示:alt我们使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现;而服务间通过Ribbon或Feign实现服务的消费以及均衡负载;通过Spring Cloud Config实现了应用多环境的外部化配置以及版本管理。为了转载 2016-11-25 11:14:39 · 1506 阅读 · 0 评论 -
Spring Cloud构建微服务架构(四)分布式配置中心
Spring Cloud Config为服务端和客户端提供了分布式系统的外部化配置支持。配置服务器为各应用的所有环境提供了一个中心化的外部配置。它实现了对服务端和客户端对Spring Environment和PropertySource抽象的映射,所以它除了适用于Spring构建的应用程序,也可以在任何其他语言运行的应用程序中使用。作为一个应用可以通过部署管道来进行测试或者投入生产,我们可以分别为转载 2016-11-25 11:15:01 · 1672 阅读 · 0 评论 -
Spring Boot中的缓存支持(二)使用Redis做集中式缓存
虽然EhCache已经能够适用很多应用场景,但是由于EhCache是进程内的缓存框架,在集群模式下时,各应用服务器之间的缓存都是独立的,因此在不同服务器的进程间会存在缓存不一致的情况。即使EhCache提供了集群环境下的缓存同步策略,但是同步依然需要一定的时间,短暂的缓存不一致依然存在。在一些要求高一致性(任何数据变化都能及时的被查询到)的系统和应用中,就不能再使用EhCache来解决了,转载 2016-11-25 11:17:49 · 3679 阅读 · 0 评论 -
Spring Boot中使用Spring Security进行安全控制
准备工作首先,构建一个简单的Web工程,以用于后续添加安全控制,也可以用之前Chapter3-1-2做为基础工程。若对如何使用Spring Boot构建Web应用,可以先阅读《Spring Boot开发Web应用》一文。Web层实现请求映射1234567891011121314@Controllerpublic class HelloCont转载 2016-11-25 11:20:12 · 4338 阅读 · 1 评论 -
Spring Boot中使用@Async实现异步调用
什么是“异步调用”?“异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行;异步调用指程序在顺序执行时,不等待异步调用的语句返回结果就执行后面的程序。同步调用下面通过一个简单示例来直观的理解什么是同步调用:定义Task类,创建三个处理函数分别模拟三个执行任务的操作,操作消耗时间随机取(10秒内)转载 2016-11-25 11:22:18 · 7383 阅读 · 0 评论 -
spring boot&&cloud干货系列
接触spring boot也有些时日了,刚开始博主还想参照官方参考指南自己写一个系列的入门式的教程,包含spring boot的所有模块的用法,后来发现,有一大波优秀的系列文章和项目了,所以就没班门弄斧重复造轮子了,这里对网上热门spring boot系列资源来个汇集,希望看到此博的人在spring boot的学习道路上能乘前人栽树之凉 ,少走弯路! 首先上个本站的spring boo转载 2016-11-25 12:20:17 · 12303 阅读 · 1 评论 -
7天学会spring cloud教程
按照官方的话说:Spring Cloud 为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性 Token、全局锁、决策竞选、分布式会话和集群状态)操作的开发工具。最关键的是它足够简单,一般的开发人员只需要几天时间就可以学会它的基本用法。 本Spring Cloud 7天系列教程,包括7个例子和相关短文,都是最简单的用法,也是默认最基本的用法,在实转载 2016-11-25 16:27:26 · 4485 阅读 · 0 评论 -
spring cloud教程之使用spring boot创建一个应用
《7天学会spring cloud》第一天,熟悉spring boot,并使用spring boot创建一个应用。Spring Boot是Spring团队推出的新框架,它所使用的核心技术还是Spring框架,主要是Spring 4.x,所以如果熟悉spring 4的人,能够更快的接受和学会这个框架。Spring boot可以看做是在spring框架基础上再包了一层,这一层包含方便开发者进行转载 2016-11-25 16:39:49 · 5538 阅读 · 0 评论 -
Spring Cloud 5分钟搭建教程
1.前言:1.1.以下内容是我通过阅读官方文档,并成功实践后的经验总结,希望能帮助你更快地理解和使用spring Cloud. 1.2.默认读者已经熟练掌握Spring 全家桶,Spring Boot和注解开发.1.3.陆续更新2.开发环境:2.1.开发工具:idea2.2.开发环境:jdk1.72.3.Spring版本:转载 2016-11-25 16:43:57 · 36680 阅读 · 7 评论 -
基于spring-cloud实现eureka注册服务小案例
本案例来自于spring官网:http://spring.io/guides/gs/service-registration-and-discovery/ JDK要求1.8或以上版本。首先创建两个项目,eureka-service和eureka-client。 eureka-server作为eureka的服务端,提供注册服务,eureka-client作为eureka的客户端,属于转载 2016-11-28 14:42:09 · 4679 阅读 · 0 评论 -
【微框架】之一:从零开始,轻松搞定SpringCloud微框架系列--开山篇
一、SpringCloud项目简介 Spring Cloud: 微服务工具包,为开发者提供了在分布式系统的配置管理、服务发现、断路器、智能路由、微代理、控制总线等开发工具包。 Spring Boot: 旨在简化创建产品级的 Spring 应用和服务,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用微服务功能 可以和spring转载 2016-11-28 14:45:15 · 47448 阅读 · 6 评论 -
Spring Cloud构建微服务架构(四)分布式配置中心(续)
先来回顾一下,在前文中我们完成了什么:构建了config-server,连接到Git仓库在Git上创建了一个config-repo目录,用来存储配置信息构建了config-client,来获取Git中的配置信息在本文中,我们继续来看看Spring Cloud Config的一些其他能力。高可用问题传统作法通常在生产环境,Config Server转载 2016-11-25 11:09:55 · 715 阅读 · 0 评论 -
Spring Cloud构建微服务架构(七)消息总线(续:Kafka)
Spring Cloud Bus除了支持RabbitMQ的自动化配置之外,还支持现在被广泛应用的Kafka。在本文中,我们将搭建一个Kafka的本地环境,并通过它来尝试使用Spring Cloud Bus对Kafka的支持,实现消息总线的功能。由于本文会以之前Rabbit的实现作为基础来修改,所以先阅读《Spring Cloud构建微服务架构(七)消息总线》有助于理解本文。Kafka简转载 2016-11-25 11:08:54 · 1094 阅读 · 0 评论 -
springcloud(第五篇)springcloud turbine
spring cloud turbine简介turbine是聚合服务器发送事件流数据的一个工具,hystrix的监控中,只能监控单个节点,实际生产中都为集群,因此可以通过 turbine来监控集群下hystrix的metrics情况,通过eureka来发现hystrix服务。netflix turbine使用官方给定的war 放入tomcat中运行,修改tu转载 2016-11-29 09:03:52 · 2107 阅读 · 0 评论 -
Spring Boot 官方文档学习(一)入门及使用
官方文档: http://docs.spring.io/spring-boot/docs/1.4.0.RELEASE/reference/htmlsingle/个人说明:本文内容都是从为知笔记上复制过来的,样式难免走样,以后再修改吧。另外,本文可以看作官方文档的选择性的翻译(大部分),以及个人使用经验及问题。其他说明:如果对Spring Boot没有概念,请先移步上一篇文章 Spr转载 2016-11-30 10:38:22 · 3379 阅读 · 0 评论 -
用 Docker 构建、运行、发布来一个 Spring Boot 应用
原文同步至 http://waylau.com/docker-spring-boot/本文演示了如何用 Docker 构建、运行、发布来一个 spring Boot 应用。Docker 简介Docker 是一个 Linux 容器管理工具包,具备“社交”方面,允许用户发布容器的 image (镜像),并使用别人发布的 image。Docker image 是用于运行容转载 2016-11-30 10:45:05 · 743 阅读 · 0 评论 -
Docker容器及Spring Boot微服务应用
1 什么是Docker1.1 Docker的出现问题一:项目实施环境复杂问题 传统项目实施过程中经常会出现“程序在我这跑得好好的,在你那怎么就不行呢?! ” 这是一个典型的应用场景,Docker image中包含了程序需要的所有的运行时依赖,比如java的程序,肯定要在image中包含jdk;比如Python的程序,肯定要在image中包含对应版本的Python转载 2016-11-30 10:46:23 · 3502 阅读 · 0 评论 -
手把手教你用Spring Cloud和Docker构建微服务
什么是Spring Cloud? Spring Cloud 是Pivotal提供的用于简化分布式系统构建的工具集。Spring Cloud引入了云平台连接器(Cloud Connector)和服务连接器(Service Connector)的概念。云平台连接器是一个接口,需要由云平台提供者进行实现,以便库中的其他模块可以与该云平台协同工作。 Spring Boot S转载 2016-12-02 17:21:08 · 24387 阅读 · 0 评论 -
Spring Boot多数据源配置与使用
之前在介绍使用JdbcTemplate和Spring-data-jpa时,都使用了单数据源。在单数据源的情况下,Spring Boot的配置非常简单,只需要在application.properties文件中配置连接参数即可。但是往往随着业务量发展,我们通常会进行数据库拆分或是引入其他数据库,从而我们需要配置多个数据源,下面基于之前的JdbcTemplate和Spring-data-jpa例子分别转载 2016-12-05 10:35:18 · 5905 阅读 · 0 评论 -
spring-boot 之 使用Admin监控应用
Spring Boot提供的监控接口,例如:/health、/info等等,实际上除了之前提到的信息,还有其他信息业需要监控:当前处于活跃状态的会话数量、当前应用的并发数、延迟以及其他度量信息。下面我们来了解如何使用spring-boot-admin来监控我们的系统。一、创建spring-boot-admin服务首先使用Spring Tool Suite(简称STS)创建一个简单的转载 2016-12-05 11:15:26 · 5904 阅读 · 0 评论 -
spring 涉及到注解说明
最近学习springcloud微服务框架,看到很多以前没用到的注解,所以今天做了些统计和说明:@Controller 控制层,里面有多个连接@Service 业务层,一般对于接口和实现@Qualifier 如果一个接口有多个实现,那么注入时候加上唯一标示@Repository 一般的dao层@Autowired 自动注入依赖@RequestMapping (value=原创 2016-12-05 11:32:59 · 2869 阅读 · 0 评论 -
Docker的安装配置及使用详解
基本概念Docker 包括三个基本概念镜像(Image)容器(Container)仓库(Repository)先理解了这三个概念,就理解了 Docker 的整个生命周期。1、docker安装与启动yum install -y epel-releaseyum install docker-io # 安装docker# 配置文件 /etc/sysconfig/docker转载 2016-12-05 17:14:47 · 1038 阅读 · 0 评论 -
DOCKER windows 7 详细安装教程
DOCKER windows安装编者: xiaym 日期:2015年1月20日 排版工具: 马克飞象 QQ: 252536711DOCKER windows安装1.下载程序包2. 设置环境变量3. 启动DOCKERT4. 分析start.sh5. 利用SSH工具管理6. 下载镜像6.1 下载地址6.2 用FTP工具上传tar包6.3 安装6.转载 2016-12-05 17:18:20 · 1190 阅读 · 0 评论 -
Windows 系统安装Docker Compose 步骤
参考 Docker Compose official 官方安装指南: https://docs.docker.com/compose/install/实际上到目前为止还不能直接在Windows上安装Docker Compose,所以这篇文章要讲的是如何在Windows上使用Docker Compose。先决条件: Docker Machine 已经安装完毕。转载 2016-12-05 17:28:43 · 3292 阅读 · 1 评论 -
Docker在 Windows 上安装
注意:这个Docker的发行版本不建议使用Boot2Docker命令行,建议使用Docker Machine。使用Docker Toolbox安装Docker Machine跟安装其他Docker工具一样。你可以使用Docker Toolbox安装Docker。Docker Toolbox包含如下的Docker 工具:Docker Machine 为了运行 do转载 2016-12-05 17:33:58 · 5265 阅读 · 0 评论 -
Spring Cloud构建微服务架构(一)服务注册与发现
Spring Cloud构建微服务架构(一)服务注册与发现 2016-05-31 Spring Cloud被围观 9912 次Spring Cloud简介Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和转载 2016-11-25 10:50:18 · 1845 阅读 · 2 评论 -
Spring Cloud源码分析(二)Ribbon
在之前介绍使用Ribbon进行服务消费的时候,我们用到了RestTemplate,但是熟悉Spring的同学们是否产生过这样的疑问:RestTemplate不是Spring自己就有的吗?跟Ribbon的客户端负载均衡又有什么关系呢?下面在本文,我们来看RestTemplate和Ribbon是如何联系起来并实现客户端负载均衡的。首先,回顾一下之前的消费者示例:我们是如何实现客户端负载均衡的?转载 2016-11-25 11:08:25 · 3821 阅读 · 1 评论 -
使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
在spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。我们可以使用JDK原生的URLConnection、Apache的Http Client、Netty的异步HTTP Client, Spring的RestTemplate。但是,用起来最方便、最优雅的还是要属Feign了。Feign简介转载 2017-05-02 09:18:20 · 1107 阅读 · 0 评论