随笔分类 -  源码

上一页 1 2 3 4 5 6 7 8 ··· 12 下一页
源码
摘要:1 前言 闲来无事,复习复习并发中常用到的一些协调多线程的工具哈。 2 基于Java队列的实现 生产者跟消费者之间要协调,他俩会出现碰撞的地方就是存放东西的容器,所以我们可以直接拿一个线程安全的队列来做容器即可,比如我这里用的 ArrayBlockingQueue: /** * @author: x 阅读全文
posted @ 2024-02-17 10:42 酷酷- 阅读(32) 评论(0) 推荐(0)
摘要:1 前言 这一节我们讲解Tomcat的NioEndPoint中ConcurrentLinkedQueue 的使用。 2 Tomcat的容器结构 本节讲解apache-tomcat-7.0.32-src 源码中ConcurrentLinkedQueue 的使用。 首先介绍 Tomcat 的容器结构以及 阅读全文
posted @ 2024-02-11 15:56 酷酷- 阅读(61) 评论(0) 推荐(0)
摘要:1 前言 看了那么多 Java 提供的队列工具,那么我们这节开始看看哪些地方用到了这些队列哈。 这一节我们讲解logback异步日志打印中ArrayBlockingQueue的使用。 2 异步日志打印模型概述 在高并发、高流量并且响应时间要求比较小的系统中同步打印日志已经满足不了需求 了,这是因为打 阅读全文
posted @ 2024-02-11 15:22 酷酷- 阅读(306) 评论(0) 推荐(0)
摘要:1 前言 这节我们继续看看另一个队列 PriorityBlockingQueue,优先级的哈。 2 PriorityBlockingQueue 介绍 PriorityBlockingQueue 是带优先级的无界阻塞队列,每次出队都返回优先级最高或者 最低的元素。其内部是使用平衡二叉树堆实现的,所以直 阅读全文
posted @ 2024-02-10 18:38 酷酷- 阅读(65) 评论(0) 推荐(0)
摘要:1 前言 JDK 中提供了一系列场景的并发安全队列。总的来说,按照实现方式的不同可分为阻 塞队列和非阻塞队列,前者使用锁实现,而后者则使用CAS非阻塞算法实现。这节我们来看看 ConcurrentLinkedQueue。 2 ConcurrentLinkedQueue 介绍 ConcurrentLi 阅读全文
posted @ 2024-02-10 18:19 酷酷- 阅读(123) 评论(0) 推荐(0)
摘要:1 前言 最近复习 AQS,回顾下其中的知识哈。 2 概述 2.1 AQS——锁的底层支持 AbstractQueuedSynchronizer 抽象同步队列简称 AQS,它是实现同步器的基础组件, 并发包中锁的底层就是使用 AQS 实现的。另外,大多数开发者可能永远不会直接使用 AQS,但是知道其 阅读全文
posted @ 2024-02-09 21:16 酷酷- 阅读(75) 评论(0) 推荐(0)
摘要:1 前言 LockSupport 工具类最近复习到这个类了,之前也没做笔记,这里简单回顾下哈。 JDK 中的 rt.jar 包里面的 LockSupport 是个工具类,它的主要作用是挂起和唤醒线程, 该工具类是创建锁和其他同步类的基础。 LockSupport 类与每个使用它的线程都会关联一个许可 阅读全文
posted @ 2024-02-09 15:05 酷酷- 阅读(62) 评论(0) 推荐(0)
摘要:1 前言 我们平时使用随机数大家可能会用到 Random,但是它的问题大家知道吗?以及该如何解决呢?这节我们就来看看。 2 Random 类及其局限性 在 JDK 7 之前包括现在,java.util.Random 都是使用比较广泛的随机数生成工具类, 而且 java.lang.Math 中的随机数 阅读全文
posted @ 2024-02-09 11:41 酷酷- 阅读(118) 评论(0) 推荐(0)
摘要:1 前言 我们服务间的调用基本都是通过 OpenFeign 方式使用的,最近发现小伙伴们本地调试代码的时候或者要调试测试环境的话,有的时候需要给 OpenFeign 中的 @FeignClient 添加 url 来实现服务的调用。这就带来比如 feign 比较多的话,要改好多个有的时候地址变了,又要 阅读全文
posted @ 2024-01-17 17:11 酷酷- 阅读(4157) 评论(0) 推荐(0)
摘要:1 前言 这几天看 OpenFeign 的源码,发现一个类 NamedContextFactory(带命名的上下文容器工厂),简单的说就是根据 name 隔离出来不同的 Context ,单看这个的话这个类还是比较重的哈,你比如说我有 10个名字,100个名字,那它岂不是要创建 10个上下文,100 阅读全文
posted @ 2024-01-17 08:00 酷酷- 阅读(473) 评论(0) 推荐(0)
摘要:1 前言 今儿有个需求涉及到文件上传的东西,关键是 OpenFeign 去调用,当然最后底牌我也可以创建普通的 HTTP 请求或者 RestTemplate 自己请求是不是也行,但是本人这个倔驴型性格,偶尔也会跟自己犟犟,就是要用 OpenFeign 把它搞出来。 首先我有两个这样的接口: // 客 阅读全文
posted @ 2024-01-15 21:27 酷酷- 阅读(1528) 评论(0) 推荐(0)
摘要:1 com.alibaba.nacos.api.exception.NacosException:failed to req API:/nacos/v1/ns/instance after all servers([xxx]) tried: ErrCode:403, ErrMsg:<html><bo 阅读全文
posted @ 2023-12-16 16:24 酷酷- 阅读(3685) 评论(0) 推荐(1)
摘要:1 前言 我们知道 Spring 中有数据源、事务,Mybatis 里也有数据源,数据源可以理解为就是数据库连接 Connection,而 Spring中的事务设置的隔离级别、自动提交什么的,其实就是给当前的数据库连接设置的,那么 Mybatis 又是如何巧妙的拿到这个连接并执行相关的语句的呢?我们 阅读全文
posted @ 2023-11-28 17:44 酷酷- 阅读(378) 评论(0) 推荐(0)
摘要:1 前言 在复习 SpringBoot,顺便画画图,捋捋执行过程哈。画图工具用的 ProcessOn,感觉还行。 2 启动 2.1 初始化器、监听器 2.2 构建环境变量对象 2.3 创建上下文对象 2.4 准备上下文 阅读全文
posted @ 2023-11-14 06:40 酷酷- 阅读(36) 评论(0) 推荐(0)
摘要:1 前言 最近比较好奇,Lombok、MapStruct 里的注解,会在打包的时候会给我们的字节码文件里,写入一些东西甚至生成一些转换的字节码文件,不知道人家是如何做到的,所以抽空看了看,自己写了一个小Demo,来体验下。我们的目标就是引入自己的 AbstractProcessor 的 maven依 阅读全文
posted @ 2023-10-19 09:40 酷酷- 阅读(258) 评论(0) 推荐(0)
摘要:1 前言 Apache Tomcat®软件是Java Servlet、JavaServer页面、Java 语言表达式和 Java WebSocket 技术的开源实现。Java Servlet、JavaServer页面、Java 表达式语言和 Java WebSocket 规范都是在 Java 社区进 阅读全文
posted @ 2023-09-14 08:26 酷酷- 阅读(358) 评论(0) 推荐(0)
摘要:1 前言 本节我们来看看 Java SPI,SPI 是一种用于动态加载服务的机制。它的核心思想就是解耦,属于典型的微内核架构模式。SPI 在 Java 世界应用非常广泛,如:Dubbo、Spring Boot 等框架。本文从源码入手分析,深入探讨 Java SPI 的特性、原理,以及在一些比较经典领 阅读全文
posted @ 2023-09-11 08:21 酷酷- 阅读(261) 评论(0) 推荐(0)
摘要:1 前言 上节我们看到哪里呢?还知道不? 简单回顾下:在门户Portal发布配置后,会调用到 Admin Service 的 publish 方法,publish里会通过消息发送器发送,默认的消息发送器也是唯一的,就是往数据库里保存了一条 ReleaseMessage 记录,基于数据库实现的消息发送 阅读全文
posted @ 2023-09-01 07:50 酷酷- 阅读(524) 评论(0) 推荐(0)
摘要:1 前言 上节我们看了下发布配置的 Portal 以及 Admin Service的变化过程,我们看到Admin Service 的 messageSender.sendMessage(),发送消息以及消费消息,那么这节我们继续看。 2 MessageSender 发送消息 2.1 ReleaseM 阅读全文
posted @ 2023-08-31 07:47 酷酷- 阅读(285) 评论(0) 推荐(0)
摘要:1 前言 上节我们看了下我们服务启动的时候,首次去加载配置的过程,那么这节来开始看看当我们在 Apollo上配置变更的时候,我们的服务又是如何一步一步的热更新掉的呢,也就是实时更新。 2 配置发布过程 我们先了解下,当我们发布一个配置时,Apollo是如何运转的: 上图简要描述了配置发布的大致过程: 阅读全文
posted @ 2023-08-30 07:55 酷酷- 阅读(251) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 ··· 12 下一页