- 2019-12-28
【Spring Cloud 源码解读】之 【RestTemplate加上一个@LoadBalanced注解就能实现负载均衡!】
前提概要: 前天,有个前端大佬问了我两个问题:为啥不引入Ribbon依赖就能使用Ribbon?为啥RestTemplate加上@LoadBalanced注解就能负载均衡了?我也表示很疑惑,而我自己其实也真的没去了解过,所以趁着工作不太忙,赶紧去研究一波。 第一个问题比较简单,一般都是其 阅读全文>> - 2019-11-28
快速搭建 SpringCloud 微服务开发环境的脚手架
本文适合有 SpringBoot 和 SpringCloud 基础知识的人群,跟着本文可使用和快速搭建 SpringCloud 项目。 本文作者:HelloGitHub-秦人 HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来一款基于 SpringCloud2.1 的 阅读全文>> - 2019-11-21
Feign 调用丢失Header的解决方案
问题 在 Spring Cloud 中 微服务之间的调用会用到Feign,但是在默认情况下,Feign 调用远程服务存在Header请求头丢失问题。 解决方案 首先需要写一个 Feign请求拦截器,通过实现RequestInterceptor接口,完成对所有的Feign请求,传递请求头 阅读全文>> - 2019-11-07
微信授权就是这个原理,Spring Cloud OAuth2 授权码模式
授权码模式的认证过程是这样的: 1、用户客户端请求认证服务器的认证接口,并附上回调地址; 2、认证服务接口接收到认证请求后调整到自身的登录界面; 3、用户输入用户名和密码,点击确认,跳转到授权、拒绝提示页面(也可省略); 4、用户点击授权或者默认授权后,跳转到微服务客户端的回调地址,并 阅读全文>> - 2019-11-07
Spring Cloud OAuth2 实现用户认证及单点登录
OAuth 2 有四种授权模式,分别是授权码模式(authorization code)、简化模式(implicit)、密码模式(resource owner password credentials)、客户端模式(client credentials). 本文我们将使用授权码模式和 阅读全文>> - 2019-11-03
如何在Spring Boot项目中巧妙利用策略模式干掉if else!
直入主题 我们都知道,设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。那么,我们可能都了解过设计模式,但是在项目中怎么使用可能还是会有点疑惑,今 阅读全文>> - 2019-08-05
JWT如何在Spring Cloud微服务系统中在服务相互调时传递
在微服务系统中,为了保证微服务系统的安全,常常使用jwt来鉴权,但是服务内部的相互调用呢。经常有人在微信上问我,我给出一个解决办法,采用Feign的拦截器。 在Feign中开启了hystrix,hystrix默认采用的是线程池作为隔离策略。线程隔离有一个难点需要处理,即隔离的线程无法获 阅读全文>> - 2019-08-05
如何在springcloud分布式系统中实现分布式锁?
最近在看分布式锁的资料,看了 Josial L的《Redis in Action》的分布式锁的章节。实现思路是利用springcloud结合redis实现分布式锁。 注意:这篇文章有问题,请看这一篇http://blog.csdn.net/forezp/article/details/ 阅读全文>> - 2019-08-05
如何用Redlock实现分布式锁
之前写过一篇文章《如何在springcloud分布式系统中实现分布式锁?》,由于自己仅仅是阅读了相关的书籍,和查阅了相关的资料,就认为那样的是可行的。那篇文章实现的大概思路是用setNx命令和setEx配合使用。 setNx是一个耗时操作,因为它需要查询这个键是否存在,就算redis的 阅读全文>> - 2019-08-05
如何使用MongoDB+Springboot实现分布式ID?
一、背景 如何实现分布式id,搜索相关的资料,一般会给出这几种方案: 使用数据库自增Id 使用reids的incr命令 使用UUID Twitter的snowflake算法 利用zookeeper生成唯一ID MongoDB的ObjectId 另外,在我通过爬取知乎用户id发现, 阅读全文>> - 2019-08-01
2019年 SpringCloud面试题口述
一.SpringCloud面试题口述 1.SpringCloud和Dubbo SpringCloud和Dubbo都是现在主流的微服务架构SpringCloud是Apache旗下的Spring体系下的微服务解决方案Dubbo是阿里系的分布式服务治理框架从技术维度上,其实SpringClo 阅读全文>>