自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 spring cloud+spring boot直播电子商务小程序

涉及平台:平台管理(包含自营店面)、商家端(PC端、手机端)、买家平台(PC端、H5/公众号、小程序、APP端(IOS/Android)、业务微服务核心架构:Spring Cloud、Spring Boot、Mybatis Plus、Redis前端框架:VUE、Bootstrap/H5/CSS3、IOS、Android、小程序核心思想:分布式、微服务、云架构、模块化、原子化、持续集成、集群部署开发模式:代码生成工具、驱动式开发模式、提高开发效率社交模式:VR全景虚拟现实线上线下、直播带货、短视频带

2020-06-18 09:22:29 288

原创 java版电子商务spring cloud分布式微服务b2b2c社交电商

涉及平台:平台管理(包含自营店面)、商家端(PC端、手机端)、买家平台(PC端、H5/公众号、小程序、APP端(IOS/Android)、业务微服务核心架构:Spring Cloud、Spring Boot、Mybatis Plus、Redis前端框架:VUE、Bootstrap/H5/CSS3、IOS、Android、小程序核心思想:分布式、微服务、云架构、模块化、原子化、持续集成、集群部署开发模式:代码生成工具、驱动式开发模式、提高开发效率社交模式:VR全景虚拟现实线上线下、直播带货、短视频带

2020-06-16 10:20:51 143

原创 Spring Boot : Webflux 和 MVC 性能对比

前言最近在网上看到,很多人都讲 Spring Boot Webflux 要超过 SpringMVC ,感觉在高并发的场景下, Spring Boot Webflux 简直就是银弹。本文将通过最简单的方式,来简单测试对比一下 Spring Boot Webflux 和 SpringMVC 在高并发场景下的性能。准备首先介绍一下本人的硬件情况:CPU:因特尔的 i7-8700内存:16G DDR4 2666系统:win10压测工具选择 Apache 的 jmeter ,版本为 5.1.1.

2020-06-12 10:35:58 577

原创 Spring Boot : 优雅的使用 API 文档工具 Swagger2

引言各位在开发的过程中肯定遇到过被接口文档折磨的经历,由于 RESTful 接口的轻量化以及低耦合性,我们在修改接口后文档更新不及时,导致接口的调用方(无论是前端还是后端)经常抱怨接口与文档不一致。程序员的特点是特别不喜欢写文档,但是又同时特别不喜欢别人不写文档。快速上手既然 Swagger2 是一个 API 文档工具,我们就在代码中看一下这个文档工具在 Spring Boot 中是如何使用的吧。(了解源码可+求求: 1791743380)2.1 引入依赖代码清单:spring-boo..

2020-06-12 09:57:26 217

原创 Spring Boot: 响应式编程以及 Spring Boot Webflux 快速入门

什么是响应式编程在计算机中,响应式编程或反应式编程(英语:Reactive programming)是一种面向数据流和变化传播的编程范式。这意味着可以在编程语言中很方便地表达静态或动态的数据流,而相关的计算模型会自动将变化的值通过数据流进行传播。例如,在命令式编程环境中,a=b+c 表示将表达式的结果赋给 a,而之后改变 b 或 c 的值不会影响 a 。但在响应式编程中,a 的值会随着 b 或 c 的更新而更新。响应式编程是基于异步和事件驱动的非阻塞程序,只需要在程序内启动少量线程扩展,而不是水..

2020-06-11 09:20:20 344

原创 Spring Boot : Spring Boot 整合 RabbitMQ

前言RabbitMQ 是一个消息队列,说到消息队列,大家可能多多少少有听过,它主要的功能是用来实现应用服务的异步与解耦,同时也能起到削峰填谷、消息分发的作用。消息队列在比较主要的一个作用是用来做应用服务的解耦,消息从消息的生产者传递到消息队列,消费者从消息队列中获取消息并进行消费,生产者不需要管是谁在消费消息,消费者也无需关注消息是由谁来生产的。在分布式的系统中,消息队列也会被用在其他地方,比如分布式事务的支持,代表如阿里开源的 RocketMQ 。当然,我们本篇文章的主角还是 RabbitMQ .

2020-06-11 09:15:15 154

原创 SpringCloud+SpringBoot+SSO单点登录之OAuth2.0 根据token获取用户信息(4)

上一篇我根据框架中OAuth2.0的使用总结,画了SSO单点登录之OAuth2.0 登出流程,今天我们看一下根据用户token获取yoghurt信息的流程:Java代码 /** * 根据token获取用户信息 * @param accessToken * @return * @throws Exception */ @RequestMapping(value = "/user/token/{accesstoken}", method = RequestMethod.G

2020-06-10 14:20:03 714

原创 SpringCloud+SpringBoot+SSO单点登录之OAuth2.0登出流程(3)

上一篇我根据框架中OAuth2.0的使用总结,画了一个根据用户名+密码实现OAuth2.0的登录认证的流程图,今天我们看一下logout的流程:Java代码/** * 用户注销 * @param accessToken * @return */ @RequestMapping(value = "/user/logout", method = RequestMethod.POST) public ResponseVO userLogout(@Req

2020-06-10 14:17:24 454

原创 SpringCloud+SpringBoot+SSO单点登录之OAuth2.0登录流程(2)

上一篇是站在巨人的肩膀上去研究OAuth2.0,也是为了快速帮助大家认识OAuth2.0,闲话少说,我根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的登录认证):上面的图很清楚的描述了当前登录login的流程,现在我们针对于login做成相关的微服务,解析如下:了解源码可+求求: 1791743380请求方式:POST服务URL: http://localhost:8080/user/login参数类型:application/jsonHead

2020-06-10 14:15:04 247

原创 SpringCloud+SpringBoot+SSO单点登录之OAuth2.0登录认证(1)

之前写了很多关于spring cloud的文章,今天我们对OAuth2.0的整合方式做一下笔记,首先我从网上找了一些关于OAuth2.0的一些基础知识点,帮助大家回顾一下知识点:一、oauth中的角色client:调用资源服务器API的应用Oauth 2.0 Provider:包括Authorization Server和Resource Server(1)Authorization Server:认证服务器,进行认证和授权(2)Resource Server:资源服务器,保护受保护的资源use

2020-06-10 14:12:48 917

原创 Spring Boot : Spring Boot 邮件服务

1. 依赖文件 pom.xml代码清单:spring-boot-mail/pom.xml<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <

2020-06-10 09:14:54 152

原创 Spring Boot : Spring Boot 定时任务

在实际的项目开发工作中,我们经常会遇到需要做一些定时任务的工作,那么,在 Spring Boot 中是如何实现的呢?1. 添加依赖在 pom.xml 文件中只需引入 spring-boot-starter 的依赖即可:代码清单:spring-boot-scheduler/pom.xml<dependencies> <dependency> <groupId>org.springframework.boot</groupId>

2020-06-10 09:10:02 112

原创 Spring Boot: Spring Boot Admin 监控 Spring Boot 应用

1. 引言Spring Boot Actuator 提供了对单个 Spring Boot 的监控,信息包含:应用状态、内存、线程、堆栈等等,比较全面的监控了 Spring Boot 应用的整个生命周期。但是, Spring Boot Actuator 只为我们提供了监控的数据接口,而且返回的数据量非常的大,我们不可能通过人工肉眼的方式去分析这些返回的数据,肯定是希望能有一个图形化的界面帮助我们去分析这些信息,同时,在微服务的体系中,我们的服务数量是非常多的,这同样不方便我们人工管理,在这样的背景下,诞生了

2020-06-09 09:23:22 289

原创 Spring Boot : 微服务应用监控 Spring Boot Actuator 详解

1. 引言在当前的微服务架构方式下,我们会有很多的服务部署在不同的机器上,相互是通过服务调用的方式进行交互,一个完整的业务流程中间会经过很多个微服务的处理和传递,那么,如何能知道每个服务的健康状况就显得尤为重要。万幸的是 Spring Boot 为我们提供了监控模块 Spring Boot Actuator ,本篇文章将和大家一起探讨一些 Spring Boot Actuator 一些常见用法方便我们在日常的使用中对我们的微服务进行监控治理。Spring Boot Actuator 帮我们实现了对程序

2020-06-09 09:17:18 659

原创 Mybatis 增强工具 MyBatis-Plus

1. 简介在目前微服务的架构模式下,每个服务拥有自己的单独的数据库,单表的使用场景会越来越多, Mybatis 的使用无疑会产生很多重复劳动。Mybatis Plus 在这样的背景下应运而生了,MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。而开源团队对这个开源项目的愿景如下:愿景我们的愿景是成为 MyBatis 最好的搭档,就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。2. 特性无侵入:只做

2020-06-08 11:16:17 542

原创 Mybatis极简配置

1. 前言ORM 框架的目的是简化编程中的数据库操作,经过这么多年的发展,基本上活到现在的就剩下两家了,一个是宣称可以不用写 SQL 的 Hibernate ,一个是对 SQL 非常友好的 Mybaties ,,两者各有特点,在企业级系统开发中可以根据需求灵活使用。发现一个有趣的现象:传统企业大都喜欢使用 Hibernate ,互联网行业通常使用 Mybatis 。Hibernate 特点就是所有的 SQL 都用 Java 代码来生成,不用跳出程序去写(看) SQL ,有着编程的完整性,发展到最顶端就是

2020-06-08 11:09:43 102

原创 为 JPA 插上翅膀的 QueryDSL

1. 引言不可否认的是 JPA 使用是非常方便的,极简化的配置,只需要使用注解,无需任何 xml 的配置文件,语义简单易懂,但是,以上的一切都建立在单表查询的前提下的,我们可以使用 JPA 默认提供的方法,简单加轻松的完成 CRUD 操作。但是如果涉及到多表动态查询, JPA 的功能就显得有些捉襟见肘了,虽然我们可以使用注解 @Query ,在这个注解中写 SQL 或者 HQL 都是在拼接字符串,并且拼接后的字符串可读性非常的差,当然 JPA 还为我们提供了 Specification 来做这件事情,从

2020-06-05 09:21:38 175

原创 Spring Boot-Redis缓存使用姿势盘点

1. Redis 简介Redis 是目前业界使用最广泛的内存数据存储。相比 Memcached,Redis 支持更丰富的数据结构,例如 hashes, lists, sets 等,同时支持数据持久化。除此之外,Redis 还提供一些类数据库的特性,比如事务,HA,主从库。可以说 Redis 兼具了缓存系统和数据库的一些特性,因此有着丰富的应用场景。本文介绍 Redis 在 Spring Boot 中两个典型的应用场景。2. Lettuce 简介如果在 Java 应用中使用过 Redis 缓存,那么对

2020-06-05 09:15:41 175 1

原创 Spring Boot : Druid 连接池密码加密与监控

1. Druid 是什么?我们先来看一下官方的回答:Druid 是 Java 语言中最好的数据库连接池。 Druid 能够提供强大的监控和扩展功能。说 Druid 是 Java 语言中最好的数据库连接池,这个笔者个人觉得有些吹牛了,至少在性能上和我们上一篇介绍的 Hikari 是没得比的,相关的性能测试在网上能找到很多。功能非常丰富:了解源码可+求求: 1791743380可以监控数据库访问性能, Druid 内置提供了一个功能强大的StatFilter插件,能够详细统计 SQL 的执行性能,这对

2020-06-04 09:57:18 285

原创 Spring Boot : ORM 框架 JPA 与连接池 Hikari

数据库方面我们选用 Mysql , Spring Boot 提供了直接使用 JDBC 的方式连接数据库,毕竟使用 JDBC 并不是很方便,需要我们自己写更多的代码才能使用,一般而言在 Spring Boot 中我们常用的 ORM 框架有 JPA 和 Mybaties ,本篇文章我们要介绍的就是 JPA 的使用姿势。说道使用 ORM 框架,就不得不顺便聊一下连接池,市面上很多成熟的数据库连接池,如 C3P0 、 Tomcat 连接池、 BoneCP 等等很多产品,但是我们为什么要介绍 Hikari ?这个要

2020-06-04 09:47:49 173

原创 Spring Boot (二):模版引擎 Thymeleaf 渲染 Web 页面

虽然我们目前拥有许多十分优秀的前端框架,例如: Vue 、 React 等,非常适用于前后端分离的场景,前端可以独立部署成为服务,前后端从物理上完全进行隔离,降低程序耦合度。但是 Spring Boot 官方依然为我们提供了模版引擎用于一些无需前后端分离的场景。 Thymeleaf 是新一代的模板引擎,在 Spring Boot 中,官方推荐使用 Thymeleaf 来做前端模版引擎。打开 https://start.spring.io/ 可以看到,在当前Spring Boot 的版本中( 2.1.8.RE

2020-06-03 09:17:50 154

原创 Spring Boot (一):快速开始

本系列文章旨在使用最小依赖、最简单配置,帮助初学者快速掌握Spring Boot各组件使用,达到快速入门的目的。全部文章所使用示例代码均同步Github仓库和Gitee仓库。Spring Boot是什么?Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。讲的通俗一点就是Spring Boot并不是一个新的框架,它只是整合和默认实现了很多框架的配

2020-06-03 09:14:02 132

原创 SpringCloud 第二十篇:Spring Cloud 之 okhttp

1. 什么是 okhttp ?okhttp 是由 square 公司开源的一个 http 客户端。在 Java 平台上,Java 标准库提供了 HttpURLConnection 类来支持 HTTP 通讯。不过 HttpURLConnection 本身的 API 不够友好,所提供的功能也有限。大部分 Java 程序都选择使用 Apache 的开源项目 HttpClient 作为 HTTP 客户端。Apache HttpClient 库的功能强大,使用率也很高。2. 为什么要使用 okhttp ?okh

2020-06-02 15:14:19 413

原创 SpringCloud 第十九章:Spring Cloud 组件 Docker 化

这一节我们介绍 Spring Cloud 组件的容器化,主要包括 eureka-server 、 gateway-server 和 provider-server 。1. Docker 化配置这里我们根据 dockerfile-maven-plugin 这个 maven 插件来构建,可以用来构建 docker 镜像的 maven 插件有很多,其中使用比较多的包括 docker-maven-plugin ,这两个插件是同一个人在 Github 上开源的, docker-maven-plugin 被作者标.

2020-06-02 14:54:30 137

原创 SpringCloud第十八篇:微服务 Docker 化之基础环境

容器化Docker 的横空出世,给了容器技术带来了质的飞跃,Docker 标准化了服务的基础设施,统一了应用的打包分发,部署以及操作系统相关类库等,解决了测试生产部署时环境差异的问题。对于运维来讲,由于镜像的不可变性,更容易进行服务部署和回滚操作。利用各种第三方容器管理平台,实现一键部署、动态伸缩等操作变的轻而易举。基础镜像选择在操作系统的选择上,可选择传统的 CentOS 、 Ubuntu 或者更为轻量化的 Alpine 。比如 CentOS 或者 Ubuntu 的镜像都在 100MB 以上..

2020-06-01 10:38:32 114

原创 SpringCloud 第十七篇:服务网关Zuul基于Apollo动态路由

**Apollo概述Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。Apollo支持4个维度管理Key-Value格式的配置:application (应用)environment (环境)cluster (集群)namespace (命名空间)Apollo相比于Spring Cloud Config优势Spring Cloud Config的精妙之处在于它的配置存储于

2020-06-01 10:09:29 145

原创 SpringCloud第十六篇:微服务利剑之APM平台(二)Pinpoint

Pinpoint概述Pinpoint是一个由韩国人编写的为大型分布式系统服务的链路跟踪平台,并提供大量链路跟踪数据分析汇总解决方案。自2012年7月开始开发,与2015年1月做为一个开源项目推出。Pinpoint主要特性分布式事务跟踪,跟踪跨分布式应用的消息。自动检测应用拓扑,帮助你搞清楚应用的架构。水平扩展以便支持大规模服务器集群。提供代码级别的可见性以便轻松定位失败点和瓶颈。使用字节码增强技术,添加新功能而无需修改代码。Pinpoint优势无入侵:采用字节码增强技术,新增功..

2020-05-29 15:15:29 233

原创 SpringCloud第十五篇:微服务利剑之APM平台(一)Skywalking

Skywalking概述Skywalking与2016年11月2日由国人吴晟在Github上传v1.0版本,用于提供分布式链路追踪功能,从5.x开始,成为一个功能较为完善的APM(Application Performance Management)系统,2019年4月17日从Apache孵化器毕业,正式成为Apache顶级项目。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。官方对自己介绍是专为微服务,云原生和基于容器(Docker,Kubernetes,Mesos)架构而设计。..

2020-05-29 15:05:41 338

原创 第十四篇:Spring Cloud Gateway高级应用

这篇文章我们将继续介绍 Filter 的一些高级功能。熔断限流重试限速路由器限速在高并发场景中比较常用的手段之一,可以有效的保障服务的整体稳定性,Spring Cloud Gateway 提供了基于 Redis 的限流方案。所以我们首先需要添加对应的依赖包spring-boot-starter-data-redis-reactive org.springframework.boot spring-boot-starter-data-redis-reactiveCOPY配置文件中需

2020-05-28 14:23:33 152

原创 第十三篇:Spring Cloud Gateway服务化和过滤器

注册中心1.1 准备服务和注册中心上篇主要讲解了网关代理单个服务的使用语法,在实际的工作中,服务的相互调用都是依赖于服务中心提供的入口来使用,服务中心往往注册了很多服务,如果每个服务都需要单独配置的话,这将是一份很枯燥的工作。Spring Cloud Gateway 提供了一种默认转发的能力,只要将 Spring Cloud Gateway 注册到服务中心,Spring Cloud Gateway 默认就会代理服务中心的所有服务,下面用代码演示。在介绍Zuul的时候,我们用到了Eureka和pro.

2020-05-28 14:20:26 99

原创 第十二篇:Spring Cloud Gateway初探

前面我们在聊服务网关Zuul的时候提到了Gateway,那么Zuul和Gateway都是服务网关,这两个有什么区别呢?Zuul和Gateway的恩怨情仇1.1 背景Zuul是Netflix开源的一个项目,Spring只是将Zuul集成在了Spring Cloud中。而Spring Cloud Gateway是Spring Cloud的一个子项目。还有一个版本的说法是Zuul2的连续跳票和Zuul1的性能并不是很理想,从而催生了Spring Cloud Gateway。1.2 性能比较网上很多

2020-05-27 09:33:32 179 1

原创 第十一篇:使用Spring Cloud Sleuth和Zipkin进行分布式链路跟踪

在分布式服务架构中,需要对分布式服务进行治理——在分布式服务协同向用户提供服务时,每个请求都被哪些服务处理?在遇到问题时,在调用哪个服务上发生了问题?在分析性能时,调用各个服务都花了多长时间?哪些调用可以并行执行?…… 为此,分布式服务平台就需要提供这样一种基础服务——可以记录每个请求的调用链;调用链上调用每个服务的时间;各个服务之间的拓扑关系…… 我们把这种行为称为“分布式服务跟踪”。背景现今业界分布式服务跟踪的理论基础主要来自于 Google 的一篇论文《Dapper, a Large-Scal

2020-05-27 09:29:12 149

原创 第十篇:服务网关Zuul高级篇

上一篇我们主要聊到了Zuul的使用方式,以及自动转发机制,其实Zuul还有更多的使用姿势,比如:鉴权、流量转发、请求统计等。Zuul的核心Zuul的核心是Filter,用来实现对外服务的控制。分别是“PRE”、“ROUTING”、“POST”、“ERROR”,整个生命周期可以用下图来表示。Zuul大部分功能都是通过过滤器来实现的。Zuul中定义了四种标准过滤器类型,这些过滤器类型对应于请求的典型生命周期。PRE: 这种过滤器在请求被路由之前调用。我们可利用这种过滤器实现身份验证、在集群中选择请

2020-05-25 16:31:06 296 2

原创 第九篇:服务网关Zuul初探

前面的文章我们介绍了,Eureka用于服务的注册于发现,Feign支持服务的调用以及均衡负载,Hystrix处理服务的熔断防止故障扩散,Spring Cloud Config服务集群配置中心,似乎一个微服务框架已经完成了。我们还是少考虑了一个问题,外部的应用如何来访问内部各种各样的微服务呢?在微服务架构中,后端服务往往不直接开放给调用端,而是通过一个API网关根据请求的url,路由到相应的服务。当添加API网关后,在第三方调用端和服务提供方之间就创建了一面墙,这面墙直接与调用方通信进行权限控制,后将请求均

2020-05-25 16:28:45 113

原创 第八篇:Spring Cloud Bus 消息总线

前面两篇文章我们聊了Spring Cloud Config配置中心,当我们在更新github上面的配置以后,如果想要获取到最新的配置,需要手动刷新或者利用webhook的机制每次提交代码发送请求来刷新客户端,客户端越来越多的时候,需要每个客户端都执行一遍,这种方案就不太适合了。使用Spring Cloud Bus(国人很形象的翻译为消息总线,我比较喜欢叫消息巴士)可以完美解决这一问题。Spring Cloud BusSpring cloud bus通过轻量消息代理连接各个分布的节点。这会用在广播状态的

2020-05-25 16:25:36 155

原创 第七篇:Spring Cloud Config 配置中心高可用和refresh

引言上一篇我们聊了Spring Cloud Config 配置中心,并且和Github做了集成,我们的Server端是单机版的,任何单机版的服务都只能使用与测试环境或者自己做Demo测试,生产环境严禁使用单机服务,配置中心在整个微服务体系中都是及其重要的一个节点,尤其是在DevOps中自动扩容,如果配置中心宕机,那么所有的自动扩容都会失败。所以这一篇我们聊聊配置中心的高可用,说到高可用,在springcloud体系中,是有注册中心的,那么,我们的配置中心也是一个服务,可不可以使用Eureka做服务的.

2020-05-25 16:22:42 217

原创 第六篇:Spring Cloud Config Github配置中心

随着分布式项目越来越大,勤劳的程序猿们会开始面临一个挑战,配置文件会越来越繁杂,虽然spring提供了一个鸡肋版的解决方案,spring.profiles.active,在大型的分布式项目体系中,聊胜于无吧,手动维护配置文件的痛苦,生产,UAT,测试,开发环境的隔离,额外的配置文件,如:logback.xml日志的配置文件,bootstrap.properties配置文件,当系统中有几十个服务,相应的会有上百个配置文件,简直就是史诗级的灾难大片,每次发布上线,都要手动去检查配置文件,相应的服务都需要重启,那

2020-05-25 16:19:55 167

原创 跟我学SpringCloud | 第五篇:熔断监控Hystrix Dashboard和Turbine

Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数据。但是只使用Hystrix Dashboard的话, 你只能看到单个应用内的服务信息, 这明显不够。我们需要一个工具能让我们汇总系统内多个服务的数据并显示到Hystrix Dashboard上, 这个工具就是Turbine。Hystrix Dashboard 创建一个新的项目hystrix-dashboar

2020-05-22 10:48:15 154

原创 跟我学SpringCloud | 第四篇:熔断器Hystrix

熔断器 服务雪崩 在正常的微服务架构体系下,一个业务很少有只需要调用一个服务就可以返回数据的情况,这种比较常见的是出现在demo中,一般都是存在调用链的,比如A->B->C->D,如果D在某一个瞬间出现问题,比如网络波动,io偏高,导致卡顿,随着时间的流逝,后续的流量继续请求,会造成D的压力上升,有可能引起宕机。你以为这就是结束么,图样图森破,这才是噩梦的开始,在同一个调用链上的ABC三个服务都会随着D的宕机而引发宕机,这还不是结束,一个服务不可能只有一个接口,当它开始卡顿宕机时,会影响

2020-05-22 10:44:43 147

原创 跟我学SpringCloud | 第三篇:服务的提供与Feign调用

上一篇,我们介绍了注册中心的搭建,包括集群环境吓注册中心的搭建,这篇文章介绍一下如何使用注册中心,创建一个服务的提供者,使用一个简单的客户端去调用服务端提供的服务。本篇文章中需要三个角色,分别是服务的提供者,服务的消费者,还有一个是上一篇文章的主角——注册中心Eureka(使用单机版本即可,本篇的示例也会使用单机版本的Eureka)。整体流程为:先启动注册中心Eureka 启动服务的提供者将提供服务,并将服务注册到注册中心Eureka上 启动服务的消费者,在注册中心中找到服务并完成消费服务提供者p

2020-05-22 10:40:53 212

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除