0. 前言 该项目使用Maven进行管理和构建,所以需要预先配置好Maven.嗯,在这个系列里就不做过多的介绍了. 1. 创建项目 先创建一个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/20…
0. 前言 在上一节中,我们创建了一个项目架构,后续的项目都会在那个架构上做补充. 1. Nacos 1.1 简介 Nacos可以用来发现.配置和管理微服务.提供了一组简单易用的特性集,可以快速实现动态服务发现.服务配置.服务元数据及流量管理. Nacos用来更敏捷和容易地构建.交付和管理微服务平台.Nacos是构建以"服务"为中心的现代应用构架(例如微服务范式.云原生范式)的服务基础设置. 也就是通常我们所说的配置中心和服务发现中心. 1.2 搭建和启动 Nacos目前版本不支持以S…
0. 前言 在之前的几章中,我们先搭建了一个项目骨架,又搭建了一个使用nacos的gateway网关项目,网关项目中并没有配置太多的东西.现在我们就接着搭建在Spring Cloud 微服务中另一个重要的项目 - Spring boot admin. 1. Spring Boot Admin 介绍 Spring Boot Admin 用来监控基于Spring Boot的应用,在Spring Boot Actuator的基础上提供了简洁的可视化Web UI.Spring Boot Admin 提供…
                 开始使用Spring Cloud实战微服务 3.1. Spring Cloud实战前提 3.1.1. 需要的技术储备 语言方面:可以使用Java.scala.Groovy...等等,推荐使用Java 构建工具方面:Java开发者主要使用的是Maven,Androd开发者使用的是Gradle.(将Maven项目转换成Gradle项目所使用的命令是:gradle init --type pom) 依赖技术:Spring Boot 3.1.2. 使用的工具及软件版本…
一. 前言 在上一篇文章介绍 youlai-mall 项目中,通过整合Spring Cloud Gateway.Spring Security OAuth2.JWT等技术实现了微服务下统一认证授权平台的搭建.最后在文末留下一个值得思考问题,就是如何在注销.修改密码.修改权限场景下让JWT失效?所以在这篇文章来对方案和实现进行补充.想亲身体验的小伙伴们可以了解下 youlai-mall 项目和Spring Cloud实战系列往期文章. youlai-mall项目地址 Spring Cloud实战系…
目录 1.环境介绍 2.api网关服务 2.1 创建工程 2.3 api网关中使用token机制 2.4 测试 2.5 小结 3.一点点重要的事情 1.环境介绍 好了,不知不觉中我们已经来到了最后一篇文章,也来到了最一个工程"mirco-service-zuul",zuul是一个服务网关,虽然现在spring也出了spring cloud gateway,相信有很多之前就使用spring cloud的公司依然使用的是zuul:看完这六篇文章相信有点基础的小伙伴们应该能自己做点东西了,当…
目录 1.环境介绍 2.服务监控 2.1 加入依赖 2.2 修改配置文件 2.3 修改启动文件 2.4 监控服务 2.5 小结 3. 利用hystrix实现消费服务熔断 3.1 加入服务熔断 3.2 测试服务熔断 4. 利用turbine监控所有应用 4.1 创建工程 4.2 修改配置文件 4.3 修改启动文件 4.4 启动 5.一点点重要的事情 1.环境介绍 本篇文章涉及到前面文章的工程,mirco-service-provider.mirco-service-consumer以及需要另外新建…
创建父maven项目 提交代码至GitHub 创建eureka-server-1 项目搭建两种方式: 父pom中继承spring-boot-starter-parent,子pom中直接结成父pom.该方式比较方便,但子项目都是spring boot项目了. 父项目不需要继承spring-boot-starter-parent,子pom中通过使用scope = import依赖关系. 123456789101112 <dependencyManagement> <dependencies&…
一. 前言 本篇实战案例基于 youlai-mall 项目.项目使用的是当前主流和最新版本的技术和解决方案,自己不会太多华丽的言辞去描述,只希望能勾起大家对编程的一点喜欢.所以有兴趣的朋友可以进入 github | 码云了解下项目明细 ,有兴趣也可以一起研发和进步. 微服务通过整合 Spirng Cloud Gateway.Spring Security OAuth2.JWT 实现微服务的统一认证授权.其中Spring Cloud Gateway作为OAuth2客户端,其他微服务提供资源服务给网…
本文完整代码下载点击 一. 前言 相信了解过我或者看过我之前的系列文章应该多少知道点我写这些文章包括创建 有来商城youlai-mall 这个项目的目的,想给那些真的想提升自己或者迷茫的人(包括自己--一个工作6年觉得一无是处的菜鸟)提供一块上升的基石.项目是真的从无到有(往期文章佐证),且使用当前主流的开发模式(微服务+前后端分离),最新主流的技术栈(Spring Boot+ Spring Cloud +Spring Cloud Alibaba + Vue),最流行的统一安全认证授权(OAut…
Seata分布式事务在线体验地址:https://www.youlai.store 本篇完整源码地址:https://github.com/hxrui/youlai-mall 有想加入开源项目开发的童鞋也可以联系我(微信号:haoxianrui),希望大家能够一起交流学习.觉得项目对你有帮助希望能给一个star或者关注,持续更新中... 一. 前言 相信了解过开源项目 youlai-mall 的童鞋应该知道该项目主要是基于Spring Cloud + Vue等当前最新最主流技术落地实现的一套微服…
一. 前言 信我的哈,明天过年. 这应该是农历年前的关于开源项目 的最后一篇文章了. 有来商城 是基于 Spring Cloud OAuth2 + Spring Cloud Gateway + JWT实现的统一认证鉴权,Spring Cloud & Alibaba + vue-element-admin实现的微服务.前后端分离的全栈开源项目. 有来系统 的权限设计主要是为了实现以下几点目标: 实现RBAC模式的权限管理设计 实现基于 vue-element-admin 后台菜单权限管理系统 Sp…
一. 前言 hi,大家好,这应该是农历年前的关于开源项目 的最后一篇文章了. 有来商城 是基于 Spring Cloud OAuth2 + Spring Cloud Gateway + JWT实现的统一认证鉴权,Spring Cloud & Alibaba + vue-element-admin实现的微服务.前后端分离的全栈开源项目. 有来商城 的权限设计主要是为了实现以下几点目标: 实现RBAC模式的权限管理设计 实现基于 vue-element-admin 后台菜单权限管理系统 Spring…
大家好,本博文的连接里包含了Spring Cloud实战的代码和视频位置. 代码下载连接: 视频下载连接:…
Spring Cloud实战(一)-Spring Cloud Config Server https://segmentfault.com/a/1190000006149891 https://segmentfault.com/a/1190000006162832 https://segmentfault.com/a/1190000006188802 https://segmentfault.com/a/1190000006216281 https://segmentfault.com/a/11…
目录 1.环境介绍 2.配置中心服务化 2.1 改造mirco-service-spring-config 2.2 改造mirco-service-provider.mirco-service-consumer 3. 配置中心实时刷新 3.1 加入依赖 3.2 加入配置 3.3 测试 4.一点点重要的事情 1.环境介绍 这一篇文章中我们终于没有新工程要建了,主要是对现有的工程进行改造.在传统的开发中,我们可能会把用户.机构.资源.权限这些比较通用的东西抽取出来做一个底层平台,但是在spring…
一. 前言 记得上一篇Spring Cloud的文章关于如何使JWT失效进行了理论结合代码实践的说明,想当然的以为那篇会是基于Spring Cloud统一认证架构系列的最终篇.但关于JWT另外还有一个热议的话题是JWT续期?. 本篇就个人觉得比较好的JWT续期方案以及落地和大家分享一下,算是抛转引玉,大家有好的方案欢迎留言哈. 后端 Spring Cloud实战 | 第一篇:Windows搭建Nacos服务 Spring Cloud实战 | 第二篇:Spring Cloud整合Nacos实现注册…
Spring cloud系列教程第二篇:支付项目父工程图文搭建 在讲解spring cloud相关的技术的时候,咱们就模拟订单支付这个流程来讲讲 在这个支付模块微服务搭建过程中,上面的这些技术,都会融入进来.老的会讲解(因为老的技术还有很多公司会使用到,谁也不知道下一个公司会用新的还是旧的,所以咱们新旧都学习),新的也会讲解. 上面各种技术都融入的话,每个技术使用一个微服务项目的话,整个项目大约30+个子工程.所以这里,我们就使用maven的父子管理. 本文是由凯哥(凯哥Java:kagejav…
RestTemplate微服务项目 前言 因为要运用 Spring Cloud Alibaba 开源组件到分布式项目中,所以这里先搭建一个不通过 Spring Cloud只通过 RestTemplate 来让SpringBoot和Mybatis进行模块之间 通讯,之后会在此基础上再添加Spring Cloud Alibaba框架及各个组件. 一.项目整体概述 这里整理了一张图,代表接下来这个项目的模块划分,同时用到的一些组件 从这幅图可以看出整个项目所需要用到的组件有: GateWay(网关),…
一.PassJava 项目简介 PassJava-Learning 项目是 PassJava(佳必过)项目的学习教程.对架构.业务.技术要点进行讲解. PassJava 是一款 Java 面试刷题 的开源系统,可以用零碎时间利用小程序查看常见面试题,夯实 Java 基础. PassJava 项目可以教会你如何搭建 SpringBoot 项目,Spring Cloud 项目 采用流行的技术,如 SpringBoot.MyBatis.Redis. MySql. MongoDB. RabbitMQ.E…
文章开头唠叨两句. 2019年了,而自己参加工作也两年有余了,用一个词来概括这两年多的生活,就是:“碌碌无为”. 也不能说一点收获都没有,但是很少.2019来了,我立志要打破现状,改变自己,突破自我.现在明白了只有不断的学习才能不被淘汰,只有不断的学习才能拿到更高的工资. 言归正传,在今早发现张队在元旦前的博客“年末展望:Oracle 对 JDK收费和.NET Core 给我们的机遇”,说明了以后.net core会越来越好,而我本人在2017年的时候开始接触过.net core的时候,就没有放…
1 创建父项目 以前文所述,以spring boot 2.1.7.RELEASE为基,spring cloud版本为Greenwich.SR2,spring cloud alibaba版本为2.1.0.RELEASE.后续均以此为版本参照,不再赘述. pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0&qu…
目录讲解: 一.服务提供者与服务消费者的概念 二.编写一个服务提供者的测试类(code) 1.1. 使用微服务构建的是分布式系统,微服务之间通过网络进行通信.我们使用微服务提供者与服务消费者来描述微服务之间的调用关系.     如下: 在生活中就有这样的例子,在我们看电影的时候,用户发起一个购票的请求.在进行购票的业务操作前,电影微服务需要调用用户微服务的接口, 查询当前用户的余额是多少,是不是符合购票标准等等.在这种场景下,用户微服务就是一个服务提供者,电影微服务则是一个服务消费者.    …
spring-cloud-commons 中参考了 spring-cloud-netflix 的设计,引入了 NamedContextFactory 机制,一般用于对于不同微服务的客户端模块使用不同的 子 ApplicationContext 进行配置. spring-cloud-commons 是 Spring Cloud 对于微服务基础组件的抽象.在一个微服务中,调用微服务 A 与调用微服务 B 的配置可能不同.比较简单的例子就是,A 微服务是一个简单的用户订单查询服务,接口返回速度很快,B…
​ 在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图所示增加相关信息. ​ <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.6.RELEASE&…
需求场景: 微服务之间调用接口一次性上传多个文件. 上传文件的同时附带其他参数. 多个文件能有效的区分开,以便进行不同处理. Spring cloud的微服务之间接口调用使用Feign.原装的Feign不支持文件的传输.需要借助“Feign-form”库才行.但是貌似“Feign-form”库(至少是3.0.3版本)只支持单文件上传.在接口中使用多文件参数时会报异常: feign.codec.EncodeException: class [Lorg.springframework.web.mul…
前言: 原本计划这次写一下搭建eureka群集.但是发现上次写的只是服务的注册,忘了写服务的发现,所以这次先把服务发现补上去. 我们基于上篇文章,再新建两个.net core web api项目,分别起名为order_one,order_two, 作为两个订单服务.我们以order_one为例. 同理先使用nuget添加Pivotal.Discovery.ClientCore库. Startup.cs 中添加 public void ConfigureServices(IServiceColle…
“spring cloud”的配置中心工具“spring cloud config”提供了分布式系统配置文件集中管理解决方案.该工具功能强大,实现也很简单.网上可以搜索到很多开发教程和用例.本文并不是分享“spring cloud config”的开发方法,而是想聊一聊它的使用. 任何一个工具不管多么强大和便利,如果用的不好,也达不到期望的效果.拿到“spring cloud config”后,我期望基于这个工具构建的配置文件管理系统能够实现: 微服务中各个实例的配置项都集中在配置中心.运维人员…
基础知识 Spring cloud 版本说明 Brixton.SR5 :Brixton 的第5个Release版本 SRX:service releases 简称SRX版本,X版本号 Spring boot 1.3.x 对应 Spring cloud Brixton 版本 Spring boot 1.4.x 对应Spring cloud Camden 版本 Spring boot 服务构建 spring boot 生态被称为 Starter POMs,是一系列轻便的依赖包,针对常用的开发场景提供…
1.Spring Cloud是什么 基于spring boot,之上快速构建分布式系统的工具集 服务注册和发现[eureka.Consul.Zookeeper].服务负载均衡[Ribbon,feign].服务容错[Hystrix].服务网关[Zuul.nginx.springcloud apigateway]. 服务配置统一管理[spring cloud config.Diamond.Disconf.Apollo].链路追踪[Dapper.ZipKin.Eagleeye].实时日志. 2.关于S…