
spring
文章平均质量分 87
21世纪手艺人
这个作者很懒,什么都没留下…
展开
-
深入Spring 5 事务原理与源码分析【精品分享】
Spring事务源码分析原创 2022-11-16 23:06:33 · 491 阅读 · 0 评论 -
Spring Cloud Alibaba Nacos服务注册与发现原理与赏析
作为阿里开源的一款Spring Cloud实现原创 2021-07-25 23:25:26 · 1890 阅读 · 5 评论 -
Nacos+Prometheus+Grafana监控Spring Cloud微服务
Nacos+Prometheus+Grafana监控Spring Cloud微服务前言踩坑Spring Boot Admin使用Prometheus官方SD配置伪装为Consul新Nacos Consul Adapter快速开始总结前言本问要讲的不是使用Prometheus+Grafana监控Nacos服务本身,而是监控注册在Nacos中的服务。Prometheus和Grafana的整合网上有很多教程也就不在详细介绍了,本篇的主要内容是注册在Nacos中的服务如何被Prometheus自动监控,不需要在原创 2021-06-26 17:24:37 · 6074 阅读 · 14 评论 -
Spring WebFlux(Reactor3) block()/blockFirst()/blockLast()使用陷阱
从传统阻塞模型刚过度到Spring WebFlux非阻塞模型编程会有诸多不适应的地方。比如调用一个方法都是返回Mono或者Flux,然后需要不停的map,flatMap去处理返回的结果。在Spring MVC中可以很方便快捷处理的场景,在Spring WebFlux可能会麻烦一点。这个时候我们可能会用Reactor的boock()方法来处理了。然后我们就会得到如下的错误了:error:java.lang.IllegalStateException: block()/blockFirst()/bloc.原创 2021-04-24 18:10:45 · 13365 阅读 · 0 评论 -
响应式微服务Spring Cloud与Spring WebFlux(一)之 Reactive Feign
先介绍open feign官网对于响应式的介绍,它引用了Playpika的github项目。接着就介绍一下这个公司,他是做什么的,背书什么的。然后介绍这个项目的现状,对于cloud2为什么使用它,还有它的一些配置。在加一些测试的代码。...原创 2021-03-21 22:57:32 · 12375 阅读 · 10 评论 -
CentOS MySQL8.0安装
rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpmyum --enablerepo=mysql80-community install mysql-community-server原创 2021-03-22 19:32:42 · 135 阅读 · 0 评论 -
Spring WebFlux (Reactor3)上下文Context处理
在Spring MVC中我们可以使用ThreadLocal保存一些信息,作为请求的上下文。一些公用的变量就不用写在方法中,可以通过上下文来获取(比如:用户的登录信息)。在《重构》中马丁福勒也推荐能通过其他方式获取到的变量,不要使用方法参数传递进来。但是在Spring WebFlux中会存在多次线程切换,所以ThreadLocal就不能在Spring WebFlux中使用了,除非,手动的做ThreadLocal线程间的复制。这样处理明显是不明智的行为。那在Spring WebFlux中如何处理上下文信息,原创 2021-03-16 21:03:16 · 14652 阅读 · 56 评论 -
分布式微服务权限校验方式一览
在微服务架构中相比原来的单体服务更为复杂,在整个微服务架构中可能有成百上千个服务提供给网页或APP或其他客户端调用。我们不可能为不同的客户端所调用的每一个服务实现一套安全策略,这样是不现实的。有几种解决方案:distribution sesssion sidecar proxy 共享库 API网关distribution session建立一个服务集群,然后在前面设置一个负载均衡器,通过该负载均衡器可以始终路由到同一个session管理器。比如某个服务有三个节点,用户A访问这个服务时通过原创 2021-03-12 09:38:15 · 1109 阅读 · 1 评论 -
为什么使用Spring Reactor和Spring WebFlux?什么情况下需要使用?
Spring WebFlux跟随Spring 5在2017年发布,距今已经有四年时间了,但是在国内使用Spring MVC还是主流。作为Spring强推的技术栈,甚至可以说将身家性命都压在它身上了,它到底有什么好处,它到底解决了什么问题呢?什么是响应式?对于响应式编程,目前大多数开发者对于其可能是一种知道但是没有用过的状态。大多数人对于响应式都是说异步的嘛,所以性能好。其实这种说法不完全对,下面就为大家简单的阐述一下。在小马哥的《Reactive Programming 一种技术,各自表述.原创 2021-02-05 16:18:12 · 3402 阅读 · 4 评论 -
Spring WebFlux(Reactor3)重试
使用Spring的同学应该对重试并不陌生,在Spring中有一个专门用于重试的模块。使用这个模块,只需要一个注解就能优雅的实现重试了。那么我们也知道,Spring WebFlux响应式技术栈相比经典的命令式编程技术栈Spring MVC有了很大的改变,那么在Spring WebFlux中重试是否有Spring MVC那样方便呢?Spring WebFlux底层是使用Project Reactor,在Reactor中有一个专门的Retry动作。下面我们就一起学习一下Reactor的重试吧。我们先.原创 2021-03-01 22:37:29 · 2794 阅读 · 0 评论 -
Spring WebFlux(Reactor3)响应式编程处理异常
前言文中部分内容翻译自Reactor Guide,对Reactor Guide中举的一些例子做了一些修改和增减,更方便大家的理解。从命令式编程刚开始接触Reactor对于异常的处理可能会有些不知所措。有很多人说,刚毕业的同学和工作了几年的同学在处理异常上会有很大的区别。是因为刚毕业的同学可能对于一些异常不会做处理。同样在我们实际的项目中,异常如果处理的不恰当会引发很重大的问题。所以,本篇就向大家介绍一下命令式的异常处理对应的响应式是如果操作的呢?在开始之前,我们首先应该明确一点。在响应式序列.原创 2021-02-28 14:46:33 · 3582 阅读 · 0 评论 -
Spring Cloud Gateway整合服务发现(遇到的一点坑)
Spring Cloud Gateway作为取代zuul的新一代网关出来已经有一段时间了。一直没有尝试使用过,最近在使用Spring反应式微服务就尝试了一把,遇到了一些坑,写一些文字记录一下。主要是写一下在Spring Cloud Gateway和服务发现整合的过程中遇到的一些坑。Spring Cloud Gateway和服务发现整合在网上也有很多博客有介绍。笔者刚开始想的Spring Cloud Gateway出来这么久了,跟着网上的随便一个博客就应该可以轻松整合成功。刚开始也确实是这样,但是发现原创 2021-02-22 00:08:20 · 1584 阅读 · 0 评论 -
如何优雅的在Spring Boot中使用Quartz
在网上看到关于Spring Boot整合Quartz的方式都看起来不是太好用,太复杂。一般都会定义一个实现了QuartzJobBean 的任务类(这个类不会交给Spring管理)。然后给这个Job配置相应的JobDetail和Trigger。具体操作如下:1:定义一个任务public class DateTimeJob extends QuartzJobBean { @Override protected void executeInternal(JobExecuti原创 2020-07-01 17:31:14 · 607 阅读 · 0 评论