自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 Elasticsearch入门速通01:核心概念与选型指南

如果你是一个Elasticsearch初学者,本篇文章会为您减到介绍ES的基础概念、核心角色以及市场上常用的搜索引擎的对比

2025-04-30 18:25:12 510

原创 JVM专栏-类加载器和双亲委派机制

探索Java虚拟机(JVM)的内部工作机制对于资深Java开发者来说至关重要,尤其是在处理性能调优、内存管理等高级问题时。本篇文章作为JVM专栏的第二篇,深入探讨了JVM中的类加载器体系和双亲委派机制,旨在帮助读者从基础到深入逐步构建对JVM的全面理解。

2024-12-12 22:35:17 778

原创 JVM专栏-JVM概述

JVM专栏是JVM原理从浅入深的学习专栏,本篇主要介绍JVM概念、JVM体系、JVM架构以及类加载运行的原理

2024-12-09 22:59:45 788

原创 分布式链路追踪-01初步认识SkyWalking

大型分布式微服务架构中如何进行整个调用链路的追踪以及性能消耗的分析呢?不妨试试SkyWalking这一个链路追踪工具。

2024-10-23 20:42:16 1021

原创 并发编程-11线程池详解

线程池大家或多或少在项目中进行使用,可以帮助我们提高系统的性能,另一方面也可以帮我们我们管理系统的线程资源,那么它的核心参数的作用,线程复用的原理也是值得我们去学习的,本篇我们从源码分析去探索线程池的底层奥秘。

2024-07-13 15:22:03 705

原创 并发编程-10阻塞队列BlockingQueue

使用线程池的肯定对阻塞队列的肯定不陌生,阻塞队列的的阻塞功能是如何实现的?常见的阻塞队列和他们的使用场景是哪些?在项目中我们应该如何选择合适的阻塞队列呢?本篇将从源码开始分析各个阻塞队列的底层数据结构和原理,这样更容易让我们在系统中选择合适的阻塞队列!

2024-07-13 15:18:53 566

原创 并发编程-09之ReentrantReadWriteLock

当在读多写少的场景下,我们使用独占锁无疑肯定会对我们的系统QPS有影响,那么JUC提供了一个适用于读多写少的场景,它就是读写锁-ReentrantReadWriteLock,所以本篇将从源码分析它为什么可以实现读读不互斥、读写互斥、写写互斥,以及如何通过积累AQS实现读写状态的保存

2024-07-13 15:12:44 669

原创 并发编程-08之CyclicBarrier

CyclicBarrier字面意思回环栅栏(循环屏障),通过它可以实现让一组线程等待至某个状态(屏障点)之后再全部同时执行。叫做回环是因为当所有等待线程都被释放以后,CyclicBarrier可以被重用,本章会从源码分析它为什么可以让一组线程进行协作,以及重置的原理

2024-07-13 15:08:25 1027

原创 并发编程-07之CountDownLatch

当我们在一个需要多线程协作的场景下,比如分批处理数据,数据汇总的场景下,我们可以使用JUC的一个线程协作神器CountDownLatch进行开发,CountDownLatch可以运行一个线程等待其他几个线程执行完毕任务,得到其他线程执行的结果再进行自己的任务,本篇将探讨它的底层原理

2024-07-13 15:04:48 1031

原创 并发编程-06之Semaphore

限流是我们系统在上线期间高并发的情况下很常见的场景,JUC包也也有一个限流神器Semaphore,可以控制我们的并发线程是数量,那么它的底层原理是什么?我们一起从这篇文章开始进行探索吧。

2024-07-13 15:00:47 690

原创 并发编程-05AQS原理

juc'包中的大多数同步器实现都是围绕着共同的基础行为,比如等待队列、条件队列、独占获取、共享获取等,而这些行为的抽象就是基于 AbstractQueuedSynchronizer(简称AQS)实现的,本章就基于AQS来,通过ReentrantLock同步锁讲解AQS的视线原理

2024-07-07 17:16:10 845

原创 并发编程-04synchronized原理

本篇文章主要介绍java同步锁synchronized关键字的使用、底层原理、以及jvm对synchronized关键字的相关优化

2024-06-25 23:58:33 883 1

原创 并发编程-03CAS原理

本章节主要介绍CAS原理以及常用的原子类的使用

2024-06-25 20:40:49 603

原创 并发编程-02深入理解Java线程

本章主要介绍进程、线程的概念和区别、线程的调度方法、java线程的创建方法和原理等,有了这些基础对于下边并发编程的知识理解起来就更容易

2024-06-25 20:20:19 554

原创 并发编程-01JMM和并发三大特性

本篇主要介绍和大家一块简单认识下多线程的一些术语、以及并发的三大特性的理解、java内存模型的介绍以及volatile关键字的保证线程可见性和有序性的原理

2024-06-25 11:06:07 813

原创 <leetcode修炼>双指针训练-移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。

2024-01-04 23:58:42 493

原创 <设计模式修炼>模板方法模式的使用场景和注意事项学习

本篇文章重点介绍模板方法模式在日常开发和框架源码中的使用

2024-01-04 23:04:07 1219

原创 给定一个未排序的整数数组 nums ,找出数字连续的最长序列

给定一个未排序的整数数组 nums ,找出数字连续的最长序列

2023-12-20 13:55:06 851

原创 一个字符串数组,请你将字母异位词组合在一起。可以按任意顺序返回结果列表

一个字符串数组,请你将字母异位词组合在一起。可以按任意顺序返回结果列表

2023-12-19 22:12:46 607

原创 leetcode-两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。

2023-12-18 23:05:29 392

原创 Dubbo源码深入学习-Dubbo服务调用原理

Dubbo作为一款优秀的RPC框架,相信很多公司在分布式环境下,会选择它作为分布式服务框架,那么它底层传输的协议,以及在服务消费端和服务提供端是如何建立网络连接,进行数据传输的呢?还有它的线程模式是如何?如何进行负载均衡的呢?本篇就从Dubbo服务调用的源码开始分析其底层原理。

2023-12-17 12:11:32 1230

原创 Dubbo源码深入学习-Dubbo服务引入原理

我们在平常开发中使用是需要从注册中心拉取服务信息的,然后进行一系列步骤进行远程调用,这一系列操作对于我们来说如同黑盒,所以我们在平时开发之余,也需要对dubbo消费者如何进行有所了解,本篇我们就一块对服务导入的原理进行探索。

2023-12-14 22:31:34 990

原创 Dubbo源码深入学习-Dubbo服务是如何进行导出的?

Dubbo服务使我们像调用本地接口的方法一样远程调用其他应用的服务,那么对于服务提供者而言,它是如何把自己的服务导出,使其他应用消费者去调用的呢?以及是如何把自己的服务信息注册到注册中心的呢?虽然Dubbo的使用是一个黑盒,但是我们也要对其底层原理也要有一番了解。

2023-12-12 21:10:09 1102 1

原创 Dubbo深入源码学习-与Spring的整合探究

Dubbo接口如何被Spring管理呢?为什么加了@Service注解就可以被Spring识别呢?为什么使用@Reference注解就可以调用Dubbo服务呢?跟随本文章一起探讨Spring和Dubbo整合原理吧

2023-12-10 14:49:44 999

原创 从源码分析Dubbo的SPI机制为什么比JDK的SPI机制扩展性更好

用了那么多年的Dubbo,竟然不知道Dubbo的SPI机制是如何实现的?本文从源码分析Dubbo的SPI机制的强大之处,了解了Dubbo的SPI机制才能知道为什么Dubbo的扩展性为什么那么强大

2023-12-06 20:26:28 952

原创 从操作系统层面分析Java内存模型JMM和三大特性

关于多线程并发,大家肯定对并发的三大特性原子性,有序性,可见性有所了解,但是JVM是如何保证三大特性的呢?一起随着读者探索java内存模型JMM吧

2023-11-10 13:55:13 175

原创 Jvm专讲之垃圾回收算法和垃圾回收器

本章详细讲解常见的垃圾回收算法(复制算法、标记-整理算法、标记-清除算法)、垃圾回收器(Serial、Parallel Scavenge、ParNew、CMS、G1)

2023-07-21 09:05:17 1183 1

原创 RocketMQ-从入门到精通的4w字教程

本文是RocketMQ的单机搭建、集群搭建、基本原理和架构设计、消息存储、消息分类、常见的生产实践问题、多个MQ产品的对比层面对RocketMQ进行详细的介绍,足足4w字带你们深入理解RocketMQ的使用并运用到实际项目中去。

2022-11-22 22:46:42 6338 4

原创 Zookeeper从入门到实战的一站式文档

Zookeeper的学习文档,从节点类型到监听机制,常用的使用场景比如分布式锁,分布式注册中心等

2022-07-19 09:22:53 1396

原创 MongoDB从入门到高级的实战操作

MongoDB从初级到高级,包括管道集合操作、文档操作、集合操作以及和springboot的整合、索引特性、事务特性、复制集的搭建详细教程

2022-07-13 09:19:12 1968

原创 还不知道Dokcer怎么入门?看这篇文章就够了

从入门到高阶的一篇Docker笔记

2022-06-18 22:58:30 578

原创 还不了解Oauth2协议?这篇文章从入门到入土让你了解Oauth2以及Spring Security OAuth2 的使用

SpringSecurityOAuth2学习和实战1.OAuth2概述1.1 什么是OAuth2OAuth(Open Authorization)是一个关于授权(authorization)的开放网络标准,允许用户授权第三方 应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他 们数据的所有内容。OAuth在全世界得到广泛应用,目前的版本是2.0版。协议特点:简单:不管是OAuth服务提供者还是应用开发者,都很易于理解与使用;安全:没有涉及到用户密钥等信

2022-05-27 20:06:01 1877

原创 还在使用zkpin进行链路追踪?SkyWalking这款国产中间件也很香

SkyWalking学习和实战1.SkyWalking概述1.1 SkyWaling是什么?对于一个大型的几十个、几百个微服务构成的微服务架构系统,通常会遇到下面一些问题,比如:如何串联整个调用链路,快速定位问题?如何理清各个微服务之间的依赖关系?如何进行各个微服务接口的性能分折?如何跟踪整个业务流程的调用处理顺序?skywalking是一个国产开源框架,2015年由吴晟开源 , 2017年加入Apache孵化器。skywalking是分布式系统的应用程序性能监视工具,

2022-05-24 20:33:04 887

原创 SpringCloud-Gateway网关学习和实战

SpringCloud-Gateway网关学习和实战1.Gateway概述1.1 什么是Gateway上一代zuul 1.x官网Gateway官网Cloud全家桶中有个很重要的组件就是网关,在1.x版本中都是采用的Zuul网关;但在2.x版本中,zuul的升级一直跳票,SpringCloud最后自己研发了一个网关替代Zuul,那就是SpringCloud Gateway—句话:gateway是原zuul1.x版的替代[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img

2022-05-22 21:03:17 2797 1

原创 Seata学习和实战

SpringCloudAlibaba-Seata学习和实战1.分布式事务概述我们先了解一下单体事务演变为分布式事务的过程。1.单一事务大多数场景下,我们的应用都只需要操作单一的数据库,这种情况下的事务称之为本地事务(Local Transaction)。本地事务的ACID特性是数据库直接提供支持。本地事务应用架构如下所示:2.分布式事务随着业务量的增长,一个单体服务已经不能承载主键递增的业务,此时很多系统都会做一些高性能的调整,比如服务拆分、分库分表,这就意味着,我们完成一个业务操作可能需要跨

2022-05-22 21:00:44 561

原创 SpringCloud-Sentinel详细使用教程

本文从入门到持久化的三个扩展点详细讲述了Sentinel的详细使用过程。

2022-05-20 20:23:44 9879 6

原创 SpringCloud-feign详解

springcloud-feign学习

2022-05-10 23:19:19 15307 2

原创 Ribbon的学习和使用

Ribbon的学习和使用细节

2022-05-09 21:45:40 519

原创 RabbitMQ学习笔记

消息中间件之RabbitMQ的学习

2022-05-06 20:45:05 824

原创 Redis-高并发缓存问题及解决方案

高并发情况下一些缓存问题和解决方案

2022-05-02 21:56:46 3976

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除