随笔分类 - Java基础
摘要:问题描述 有一个同步接口,里面执行了OpenFeign远程调用,其中远程调用的系统和本系统是同一个SSO系统下的两个子系统,因为查询性能问题,其中优化的一个点是同步改异步,可是改成异步之后,一直报错远程Feign调用的时候是未登录状态。 先说原因 由于是SSO统一认证,因此远程调用必须有登录状态,而
阅读全文
摘要:https://www.jianshu.com/p/7601ba434ff4 https://www.cnblogs.com/sparkbj/articles/6208328.html https://blog.csdn.net/wanxiaoderen/article/details/106674
阅读全文
摘要:一,引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency> <groupId>o
阅读全文
摘要:springboot单机环境下的@Transictional可以保证事务,但多数据源的情况就无法使用了,这里简单实现一下多数据源的情况下如何保证事务。 一,事务实现方案 利用 ThreadLocal 将事务方法 内用到的 connection 缓存起来,当业务执行完毕,再统一 commit 或者 r
阅读全文
摘要:在开发高并发系统时,有三把利器用来保护系统:缓存、降级和限流。那么何为限流呢?顾名思义,限流就是限制流量,就像你宽带包了1个G的流量,用完了就没了。通过限流,我们可以很好地控制系统的qps,从而达到保护系统的目的。本篇文章将会介绍一下常用的限流算法以及他们各自的特点。 1,计数器限流算法 计数器算法
阅读全文
摘要:一,先模拟源码的Callable创建自己的MyCallable package com.example.test.demo.thread.callable; public interface MyCallable<T> { T call(); } 二,创建自己的FutureTask package
阅读全文
摘要:前言 在【设计模式】——代理模式(静态)以及【设计模式】——代理模式(动态)中,我们已经基本了解了什么是代理模式,以及什么是静态代理,什么是动态代理。JDK动态代理以及Cglib动态代理其实底层实现原理都是字节码的重组,不过各自对应的代理场景不同,本文我们重点研究jdk动态代理。 通过前文的了解,我
阅读全文
摘要:轻量级分布式任务调度平台(一、 XXL-JOB介绍、原理、工作流程) XXL-JOB# 【轻量级分布式任务调度平台】 (1) 基本介绍# XXL-JOB是一个轻量级分布式任务调度平台,主打特点是平台化,易部署,开发迅速、学习简单、轻量级、易扩展,代码仍在持续更新中。 调度中心: 任务调度控制台,平台
阅读全文
摘要:该系统主要用于业务系统的定时任务抽离且统一管理 对定时任务的配置管理 对服务器信息的管理 动态开启/关闭任务的执行 一,引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-star
阅读全文
摘要:一,自定义注解 /** * 自定义事务注解 * 空注解,用来标识 */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) public @interface MyTransactional { } 二,自己的连接管理器 /
阅读全文