摘要:
hashmap 1.7头插法 ,扩容后,同一个buckbin 里的链表会顺序反转。会引发线程安全问题 hashmap 1.8尾插法,扩容后, 链表不会反转 阅读全文
摘要:
1、Comparable和Comparator public static <T> void sort(List<T> list); 将集合中的数据按照默认规则进行排序 (我们在自己的类里面实现Comparabl接口方法compareTo) public static <T> void sort(L 阅读全文
摘要:
Java Set Summary 一、概要 Set 6个 | 类名 | since | 线程安全 | element null | 特点 | | | : : | : : | : : | | | ==Set== | 1.2 | | | | | HashSet | 1.2 | No | Yes | 基于 阅读全文
摘要:
Java Queue Summary 一、概要 Queue 8个 / Deque 3个 | 类名 | since | 线程安全 | element null | 特点 | | | : : | : : | : : | | | ==Queue== | 1.5 | | | | | ArrayBlockin 阅读全文
摘要:
Java Map Summary 一、概要 Map 9个 | 类名 | since | 线程安全 | key null | value null | 特点 | | | : : | : : | : : | : : | | | ==Map== | 1.2 | | | | | | Hashtable | 阅读全文
摘要:
Java List Summary 一、概要 List 5个 | 类名 | since | 线程安全 | element null | 特点 | | | : : | : : | : : | | | ==List== | 1.2 | | | | | Vector | 1.0 | Yes | Yes | 阅读全文
摘要:
Java Concurrent Summary 一、概要 并发包四种类型:原子变量、同步器、并发容器、线程池 同步器 7个 | 同步器类名 | since | 原理 | | | : : | | | ==AbstractQueuedSynchronizer== | 1.5 | CAS自旋,LockSu 阅读全文
摘要:
偏向锁、轻量级锁、自旋锁、重量级锁,看这一篇就够了! 每一个刚接触多线程并发编程的同学,当被问到,如果多个线程同时访问一段代码,发生并发的时候,应该怎么处理? 我相信闪现在脑海中的第一个解决方案就是用synchronized,用锁,让这段代码同一时间只能被一个线程执行。 我们也知道,synchron 阅读全文
摘要:
1.1、Gradle 简介 Gradle 是一款Google 推出的基于 JVM、通用灵活的项目构建工具,支持 Maven,JCenter 多种第三方仓库;支持传递性依赖管理、废弃了繁杂的xml 文件,转而使用简洁的、支持多种语言(例如:java、groovy 等)的 build 脚本文件。 官网地 阅读全文
摘要:
ThreadLocal全面解析 前置知识 具有一定的javase和javaweb基础 熟悉synchronized关键字 熟悉HashMap 熟悉 JDBC技术 学习目标 了解ThreadLocal的介绍 掌握ThreadLocal的运用场景 了解ThreadLocal的内部结构 了解ThreadL 阅读全文
摘要:
LongAdder由来 LongAdder类是JDK1.8新增的一个原子性操作类。AtomicLong通过CAS算法提供了非阻塞的原子性操作,相比受用阻塞算法的同步器来说性能已经很好了,但是JDK开发组并不满足于此,因为非常搞并发的请求下AtomicLong的性能是不能让人接受的。 如下Atomic 阅读全文
摘要:
异步&线程池 一、线程 1、初始化线程的4种方式 (1)、继承Thread (2)、实现Runnable接口 (3)、实现Callable接口 + FutureTask (可以拿到返回结果,可以处理异常) (4)、线程池 方式1和方式2:主进程无法过去线程的运算结果。不适合当前常见 方式3:主进程可 阅读全文
摘要:
Synchronized优化手段:锁膨胀、锁消除、锁粗化和自适应自旋锁 synchronized 在 JDK 1.5 时性能是比较低的,然而在后续的版本中经过各种优化迭代,它的性能也得到了前所未有的提升,上一篇中我们谈到了锁膨胀对 synchronized 性能的提升,然而它也只是“众多” sync 阅读全文
摘要:
一、Activiti Designer 流程设计器(IDEA 工具) 一、camunda 1、资源下载渠道 官网 https://camunda.com github托管地址 https://github.com/camunda/camunda-modeler CB多的大佬可以扶贫一下 https: 阅读全文
摘要:
springboot-activiti7笔记 一、安装依赖 github上Activiti的 gitbook[https://activiti.gitbook.io/activiti-7-developers-guide/getting-started/getting-started-activit 阅读全文
摘要:
Flowable 快速入门教程:任务驳回与回退 前言 支持场景 功能描述 驳回 退回 脏数据 什么是脏数据 串行样例 并行样例 会签样例 脏数据清洗效果图 完整代码 效果图 前言 本文的代码中没有对流程做任何特殊处理,用的都是流程本身的数据,因此可以通用,直接复制粘贴即可 方法不支持多对多跳转 回退 阅读全文
摘要:
Spring Cloud Gateway网关 API 网关 API 网关出现的原因是微服务架构的出现,不同的微服务一般会有不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题: 1、客户端会多次请求不同的微服务,增加了客户端 阅读全文
摘要:
Spring Cloud Alibaba是什么? Spring Cloud Alibaba 是阿里巴巴提供的微服务开发一站式解决方案,是阿里巴巴开源中间件与 Spring Cloud 体系的融合。包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组 阅读全文
摘要:
1.1 Feign概述 这篇文章主要讲述如何通过Feign去消费服务,以及Feign的实现原理的解析。 Feign是Netflix开发的声明式、模板化的HTTP客户端,Feign可以帮助我们更快捷、优雅地调用HTTP API。 Feign是⼀个HTTP请求的轻量级客户端框架。通过 接口 + 注解的方 阅读全文
摘要:
1、整合Sentinel 1、pom.xml安装依赖 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> </dependen 阅读全文