Spring Cloud 2023 新特:同步网关

2023-10-11
阅读 3 分钟
774
Spring Cloud Gateway 需要运行在提供的 Netty 运行时。它不能在传统的 Servlet 容器中工作,也不能在构建为 WAR 时工作。WebFlux 使用了异步非阻塞的编程模型,相较于传统的 MVC Servlet 需要理解和适应新的编程范式和响应式编程概念,因此学习曲线可能较陡峭。

SpringBoot 3.0 新特性,内置声明式HTTP客户端

2022-12-01
阅读 2 分钟
2.1k
从 Spring 6 和 Spring Boot 3 开始,Spring 框架支持将远程 HTTP 服务代理成带有特定注解的 Java http interface。类似的库,如 OpenFeign 和 Retrofit 仍然可以使用,但 http interface 为 Spring 框架添加内置支持。

拥抱Spring全新OAuth2解决方案

2022-06-07
阅读 3 分钟
2.9k
以下全文 Spring Authorization Server 简称为: SAS背景Spring 团队正式宣布 Spring Security OAuth 停止维护,该项目将不会再进行任何的迭代目前 Spring 生态中的 OAuth2 授权服务器是 Spring Authorization Server 已经可以正式生产使用作为 SpringBoot 3.0 的过渡版本 SpringBoot 2.7.0 过期了大量关于 SpringSecurit...

Spring SAS 0.2 上手教程

2021-08-21
阅读 8 分钟
3.7k
Spring Authorization Server (以下简称 SAS)是 Spring 团队最新开发适配 OAuth 协议的授权服务器项目,旨在替代原有的 Spring Security OAuth Server。

阿里开源工作流框架 compileflow 上手使用

2021-07-15
阅读 3 分钟
5.5k
compileflow Process 引擎是淘宝工作流 TBBPM 引擎之一,是专注于纯内存执行,无状态的流程引擎,通过将流程文件转换生成 java 代码编译执行,简洁高效。当前是阿里业务中台交易等多个核心系统的流程引擎。

Govern Service || 新的服务发现、配置管理实现

2021-05-19
阅读 2 分钟
2.7k
Govern Service 是一个轻量级、低成本的服务注册、服务发现、 配置服务 SDK,通过使用现有基础设施中的 Redis (相信你已经部署了 Redis),不用给运维部署带来额外的成本与负担。 借助于 Redis 的高性能, Govern Service 提供了超高 TPS&QPS。Govern Service 结合本地进程缓存策略 + Redis PubSub,实现实时进程缓存刷...

SpringBoot 2.5 版本功能前瞻

2021-04-27
阅读 3 分钟
3.9k
目前 Spring Boot 2.5.0 RC1 已经发布,其开发团队表示将在 5 月 20 日正式 GA。我们梳理了一下大家比较关系和感兴趣的一些变更。

干掉 Feign,Spring Cloud Square 组件发布

2021-04-19
阅读 3 分钟
4.3k
谈起 Spring Cloud 生态大家一定对 Feign 不陌生,如下图所示,Feign 可以把底层(okhttp、httpclient)Rest 的请求进行隐藏,伪装成类似 SpringMVC 的 Controller 一样。你不用再自己拼接 url,拼接参数等等操作,一切都交给 Feign 去做。使用 Feign 调用 API 就像调用本地方法一样,从避免了调用目标微服务时,需要不...

Java 9-15 ,语法新特性汇总

2021-04-02
阅读 4 分钟
2.6k
环境说明OpenJdk 15开发工具 IDEA 2020.3.2var 类型推断 | since jdk10var 是 Java10 版本中新出的特性,用它来定义局部变量。var 不是关键字,相当于一种动态类型,编译器根据变量所赋的值来推断类型。所以必须在定义变量的时候赋初始值。 {代码...} 文本块 | since jdk13在我们日常的工作中,有时候需要用到一大段的字...

火爆外网的 DGS 框架使用

2021-03-01
阅读 4 分钟
1.7k
Netflix 已开放其 Domain Graph Service(DGS)框架的源代码 ,该框架是为了方便整合 GraphQL 使用,用于简化 GraphQL 的实现。

不推荐使用Spring Boot 2.2.0 ,这个问题你肯定会遇到 (二)

2019-11-11
阅读 2 分钟
2.1k
如上图,当配置文件中存在相同组的属性,用户名、密码、年龄 都属于用户属性的抽象,按面向的规则我们可以抽取出一个 User 的PO类型使用 @ConfigurationProperties 将外部配置绑定到代码中的bean。同时可以像其他任何Spring bean一样在整个应用程序代码中注入和使用此bean。

不推荐使用Spring Boot 2.2.0 ,这个问题你肯定会遇到

2019-11-07
阅读 2 分钟
4k
项目推荐: Spring Cloud 、Spring Security OAuth2的RBAC权限管理系统 欢迎关注最近升级项目的依赖 到最新版本 版本变化 依赖 项目版本 目标版本 Spring Boot 2.1.9.RELEASE 2.2.0.RELEASE Spring Cloud Greenwich.SR3 Hoxton.RC1 Spring Boot Admin 2.1.6 2.2.0 Hoxton 版本依赖厂库 目前 Spring Cloud Hoxton 未发布 R...

面试官: 两个Redis集群 如何平滑数据迁移

2019-11-07
阅读 2 分钟
5.6k
项目推荐: Spring Cloud 、Spring Security OAuth2的RBAC权限管理系统 欢迎关注 问题 由于生产环境的各种原因,我们需要对现有服务器进行迁移,包括线上正在运行的 redis 集群环境 如何去做? 涉及到数据源变动,原有数据如何平滑迁移到新实例,从而可以实现无缝迁移? 方案汇总 基于 redis 自身的RDB/AOF 备份机制 执行 s...

Java程序到底是如何执行的

2019-10-24
阅读 2 分钟
1.7k
项目推荐: Spring Cloud 、Spring Security OAuth2的RBAC权限管理系统 欢迎关注最近裸辞,好好歇歇。整理面试题,欢迎关注。 Java 程序执行过程 无论是使用开发工具IDEA Eclipse 还是使用容器 Tomcat jetty, Java 程序的执行流程如下: Java 代码编译成字节码, 从文件后缀来看.java编译成.class 类型的文件; class 文件...

Spring Cloud Gateway 扩展支持动态限流

2019-07-30
阅读 5 分钟
5.6k
在实际生产过程中,必定不能满足我们的需求生产中路由信息是保存数据库持久化或者配置中心,RequestRateLimiterGatewayFilterFactory 并不能随着持久化数据的改变而动态改变限流参数,不能做到实时根据流量来改变流量阈值

Spring Cloud Gateway 扩展支持多版本控制及灰度发布

2019-07-09
阅读 5 分钟
6.3k
什么是灰度发布,概念请参考,我们来简单的通过下图来看下,通俗的讲: 为了保证服务升级过程的平滑过渡提高客户体验,会一部分用户 一部分用户递进更新,这样生产中会同时出现多个版本的客户端,为了保证多个版本客户端的可用需要对应的多个版本的服务端版本。灰度发布就是通过一定策略保证 多个版本客户端、服务端间能...

Spring Cloud OAuth 微服务内部Token传递的源码实现解析

2019-04-17
阅读 4 分钟
4.3k
2.客户端携带令牌直接访问资源服务器,资源服务器通过对token 的校验 ([Spring Cloud OAuth2 资源服务器CheckToken 源码解析

谈谈Spring Boot 数据源加载及其多数据源简单实现

2019-04-12
阅读 6 分钟
4.8k
业务需求 提供所有微服务数据源的图形化维护功能 代码生成可以根据选择的数据源加载表等源信息 数据源管理要支持动态配置,实时生效 附录效果图 实现思路 本文提供方法仅供类似简单业务场景,在生产环境和复杂的业务场景 请使用分库分表的中间件(例如mycat)或者框架 sharding-sphere (一直在用)等 先来看Spring 默认...

基于oauth 2.0 实现第三方开放平台

2019-04-10
阅读 4 分钟
3.4k
通过开放自己平台产品服务的各种API接口,让其他第三方开发者在开发应用时根据需求直接调用,例如微信登录、QQ登录、微信支付、微博登录、热门等。 让第三方应用通过开发平台,使得自身海量数据资源得到沉淀(变现) 目前国内主流的网站的的开放平台,都是基于oauth2.0 协议进行做的开放平台

扩展spring cache 支持缓存多租户及其自动过期

2019-03-25
阅读 4 分钟
4.6k
Spring 支持基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使用的抽象,通过在既有代码中添加少量它定义的各种 annotation,即能够达到缓存方法的返回对象的效果。

扩展资源服务器解决oauth2 性能瓶颈

2019-03-20
阅读 4 分钟
4.1k
用户携带token 请求资源服务器 资源服务器拦截器 携带token 去认证服务器 调用tokenstore 对token 合法性校验 资源服务器拿到token,默认只会含有用户名信息 通过用户名调用userdetailsservice.loadbyusername 查询用户全部信息 详细性能瓶颈分析,请参考上篇文章《扩展jwt解决oauth2 性能瓶颈》 本文是针对传统使用UUID...

扩展jwt解决oauth2 性能瓶颈

2019-03-18
阅读 6 分钟
3.7k
通过用户名调用userdetailsservice.loadbyusername 查询用户全部信息如上步骤在实际使用,会造成认证中心的负载压力过大,成为造成整个系统瓶颈的关键点。

扩展Spring Cloud Feign 实现自动降级

2019-02-22
阅读 4 分钟
6.9k
在Spring Cloud 使用feign 的时候,需要明确指定fallback 策略,不然会提示错误。 先来看默认的feign service 是要求怎么做的。feign service 定义一个 factory 和 fallback 的类

Spring Security OAuth 个性化token

2019-02-18
阅读 4 分钟
3.9k
个性化Token 目的 默认通过调用 /oauth/token 返回的报文格式包含以下参数 {代码...} 并没包含用户的业务信息比如用户信息、租户信息等。 扩展生成包含业务信息(如下),避免系统多次调用,直接可以通过认证接口获取到用户信息等,大大提高系统性能 {代码...} 密码模式生成Token 源码解析 ​ 主页参考红框部分 ResourceOw...

Spring Cloud OAuth2 资源服务器CheckToken 源码解析

2019-01-25
阅读 2 分钟
4.4k
## CheckToken的目的 当用户携带token 请求资源服务器的资源时, OAuth2AuthenticationProcessingFilter 拦截token,进行token 和userdetails 过程,把无状态的token 转化成用户信息。

Spring Cloud Greenwich 新特性和F升级分享

2019-01-24
阅读 3 分钟
8.9k
2019.01.23 期待已久的Spring Cloud Greenwich 发布了release版本,作为我们团队也第一时间把RC版本替换为release,以下为总结,希望对你使用Spring Cloud Greenwich 有所帮助Greenwich 只支持 Spring Boot 2.1.x 分支。如果使用 2.0.x 请使用Finchley版本,

Spring Cloud Gateway 数据库存储路由信息的扩展方案

2018-11-09
阅读 7 分钟
7.2k
动态路由背景 ​ 无论你在使用Zuul还是Spring Cloud Gateway 的时候,官方文档提供的方案总是基于配置文件配置的方式 例如: {代码...} 配置更改需要重启服务,不能满足实际生产过程中的动态刷新、实时变更的业务需求。 ​ 基于以上分析 pig已经提供了基于Zuul版本的动态路由功能,附Git 地址传送门,效果如下图可以实时配...

扩展Zuul实现敏捷开发的小小技巧

2018-10-26
阅读 4 分钟
2.1k
分析下目前遇到的痛点 你在开发工作的是否遇到这个问题,微服务模块划分过细,基础模块依赖的比较多? 比如你要进行微服务开发则需要启动以下基础模块 注册中心(eureka) 配置中心(spring cloud config) 网关(zuul) 认证中心(oauth) ... 如上图红色标注的服务模块,而你需要编码或者需要的只有那么一个业务微服务...

Spring Cloud Gateway 聚合swagger文档

2018-07-20
阅读 6 分钟
13.1k
​ 在微服务架构下,通常每个微服务都会使用Swagger来管理我们的接口文档,当微服务越来越多,接口查找管理无形中要浪费我们不少时间,毕竟懒是程序员的美德。

Spring Cloud Gateway 原生支持接口限流该怎么玩

2018-07-01
阅读 4 分钟
11.7k
SpringCloudGateway是Spring官方基于Spring 5.0,Spring Boot 2.0和Project Reactor等技术开发的网关,Spring云网关旨在提供一种简单而有效的路由API的方法。Spring Cloud Gateway作为Spring Cloud生态系中的网关,目标是替代Netflix ZUUL,其不仅提供统一的路由方式,并且基于Filter链的方式提供了网关基本的功能,例如...