E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
openGauss源码解析
k8s client-go
源码解析
之informer 二
Informer(二)注意:本文内容为学习笔记,内容为个人见解,不保证准确性,但欢迎大家讨论何指教。informer使用可以参考我的这个项目:hingehinge项目,用于展示如何简单使用informer以及自定义indexer。这个项目支持你用类似于orm的方式在集群中查找资源,这依赖于informer的indexer机制。本篇介绍cache.SharedIndexInforme中Control
随风奔跑尿飞扬
·
2024-01-21 00:53
云原生
kubernetes
kubernetes
golang
java
k8s源码阅读:Informer
源码解析
写在之前Kubernetes的Informer机制是一种用于监控资源对象变化的机制。它提供了一种简化开发者编写控制器的方式,允许控制器能够及时感知并响应Kubernetes集群中资源对象的变化。Informer通过与KubernetesAPI服务器进行交互,通过监听API服务器上资源对象的修改事件来实现实时的资源对象状态更新。当一个资源对象被创建、更新或删除时,Informer会收到相应的通知,并
bug_createman
·
2024-01-21 00:21
云原生源码阅读
kubernetes
golang
云原生
HDFS垃圾回收
源码解析
1.TrashPolicy类:所有的垃圾回收策略都需要实现该类,hdfs默认的实现方式是:TrashPolicyDefault,可通过fs.trash.classname来配置。2.TrashPolicy和TrashPolicyDefault类如下,这里只截取部分代码:/***ThisinterfaceisusedforimplementingdifferentTrashpolicies.*Pro
sf_www
·
2024-01-20 11:52
hadoop
hadoop
hdfs
大数据
android系统tts TextToSpeech源码原理解析及定制tts引擎
TextToSpeech
源码解析
如何查看系统源码,请查看我
Zephyr Cai
·
2024-01-20 09:40
Android源码
android技术
android
令牌桶算法与Guava的实现RateLimiter源码分析
令牌桶算法与Guava的实现RateLimiter源码分析令牌桶RateLimiter简介RateLimiter使用示例导入maven依赖编写测试代码RateLimiter的实现
源码解析
SmoothRateLimiterSmoothBursty
迷思特王
·
2024-01-20 09:39
算法
guava
Golang 之 WaitGroup
源码解析
前言如果我们有一个大的任务要做,我们会尝试将这个任务分解,分解完成之后并发交由goroutine去做,并且我需要当全部的任务完成之后再进行下面的步骤,在sync包下,就有这样一个东西适合上述情况,WaitGroup,今天我们来看看具体它是怎么实现的。PS:在下面我统一用wg来简称WaitGroup使用它的使用非常简单,如下:funcmain(){wg:=sync.WaitGroup{}fori:=
LinkinStar
·
2024-01-20 07:00
RocketMQ
源码解析
之消息发送(二)
目录1:写在前面2:RocketMQ消息数据结构3:生产者启动流程3.1:DefaultMQProducer3.2:启动生产者具体的实现类DefaultMQProducerImpl3.3:同步消息发送基本流程4:总结目录1:写在前面RockerMQ发送一般的消息(还有一种是事务消息,后续的博客会展开)有三种实现方式:可靠的同步传输,可靠的异步传输,单向传输,这些传输方式的前提都是基于消息体(消息数
奔跑的小猪zc
·
2024-01-20 05:31
RocketMQ
RockerMQ消息发送流程
Mybatis
源码解析
:kafka消费者消费不到消息
Kafka源码篇——Kafka快速入门1.1Kafka简介1.2以Kafka为中心的解决方案1.3Kafka核心概念1.4搭建Kafka源码环境Kafka源码篇——生产者2.1KafkaProducer使用示例2.2KafkaProducer分析2.3RecordAccumulator分析2.4Sender分析Kafka源码篇——消费者3.1KafkaConsumer使用示例3.2传递保证语义(D
前端陈萨龙
·
2024-01-19 23:32
程序员
java
经验分享
面试
JVM实战(18)——模拟Full GC
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介上一章,我们已经进行了一次对象晋升的模拟,本章我们将继续结合代码
smart哥
·
2024-01-19 22:03
jvm专题
jvm
JVM实战(16)——模拟Young GC
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介本章,我们将通过示例代码演示YoungGC是如何发生的。同时,我
smart哥
·
2024-01-19 22:32
jvm专题
jvm
源码解析
:最新阿里Java面试题目
一.什么是架构和架构本质在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前,我们先讨论架构的概念定义,概念是人认识这个世界的基础,并用来沟通的手段,如果对架构概念理解不一样,那沟通起来自然不顺畅。Linux有架构,MySQL有架构,JVM也有架构,使用Java开发、MySQL存储、跑在Linux上的业务系统也有架构,应
JAVA语言面试题
·
2024-01-19 21:05
程序员
java
经验分享
面试
openGauss
学习笔记-200
openGauss
数据库运维-常见故障定位案例-表文件大小无变化
文章目录
openGauss
学习笔记-200
openGauss
数据库运维-常见故障定位案例-表文件大小无变化200.1VACUUMFULL一张表后,表文件大小无变化200.1.1问题现象200.1.2原因分析
superman超哥
·
2024-01-19 19:35
openGauss学习笔记
openGauss
国产数据库
开源数据库
数据库
RDBMS
openGauss
学习笔记-202
openGauss
数据库运维-常见故障定位案例-不同用户查询同表显示数据不同
文章目录
openGauss
学习笔记-202
openGauss
数据库运维-常见故障定位案例-不同用户查询同表显示数据不同202.1不同用户查询同表显示数据不同202.1.1问题现象202.1.2原因分析202.1.3
superman超哥
·
2024-01-19 19:35
openGauss学习笔记
openGauss
国产数据库
开源数据库
数据库
RDBMS
openGauss
学习笔记-201
openGauss
数据库运维-常见故障定位案例-执行修改表分区操作时报错
文章目录
openGauss
学习笔记-201
openGauss
数据库运维-常见故障定位案例-执行修改表分区操作时报错201.1执行修改表分区操作时报错201.1.1问题现象201.1.2原因分析201.1.3
superman超哥
·
2024-01-19 19:33
openGauss学习笔记
openGauss
国产数据库
开源数据库
数据库
RDBMS
spring-integration-redis中的分布式锁基本使用和
源码解析
spring-integration-redis中的分布式锁
源码解析
使用依赖代码示例
源码解析
获取锁加锁和锁互斥机制释放锁和锁可重入机制总结watchdog机制缺失加锁的性能太低使用依赖spring-integration-redis
咦940
·
2024-01-19 17:26
分布式系统
redis
spring
spring
boot
lua
java
基于 SpringBoot 实现多租户架构:支持应用多租户部署和管理
每天10:33更新文章,每天掉亿点点头发...源码精品专栏原创|Java2021超神之路,很肝~中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
公众号-芋道源码
·
2024-01-19 16:09
spring
boot
架构
java
后端
spring
JVM实战(20)——jstat实战(1)
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介本章和下一章,我们将通过之前讲过的两个案例,看看如何在生产环境下
smart哥
·
2024-01-19 13:43
jvm专题
jvm
Nacos2.0.3
源码解析
(四)一致性协议-Distro协议实现原理
目录1、distro协议简介2、设计思想3、DistroProtocol类介绍3.1、DistroComponentHolder3.2、DistroTaskEngineHolder3.3、distro协议启动4、ClientManager5、distro验证任务详解5.1、getVerifyData方法解析5.1.1、DistroDataStorageImpl——v1版本5.1.2、DistroC
爱吃丸子的哈哈蒋
·
2024-01-19 13:35
Nacos源码解析
中间件
网络
element-ui 打包流程
源码解析
(下)
目录目录结构和使用1,npm安装1.1,完整引入1.2,按需引入2,CDN3,国际化接上文:element-ui打包流程
源码解析
(上)文章中提到的【上文】都指它↑目录结构和使用我们从使用方式来分析,为什么要打包成上面的目录结构
下雪天的夏风
·
2024-01-19 09:07
element-ui
前端
elementui
vue.js
组件库
element-ui 打包流程
源码解析
(上)
目录1,源码整体结构1.1,build目录1.2,examples目录1.3,packages目录1.4,src目录2,打包整体流程2.1,npmrunbuild:file2.1.1,build/bin/iconInit.js2.1.2,build/bin/build-entry.js2.1.3,build/bin/i18n.js2.1.4,build/bin/version.js2.2,buil
下雪天的夏风
·
2024-01-19 09:32
element-ui
前端
elementui
webpack
组件库
vue.js
JVM实战(28)——模拟Metaspace内存溢出
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介本章,我们将通过示例代码演示Metaspace区域是如何发生内存
smart哥
·
2024-01-19 08:22
jvm专题
jvm
JVM实战(19)——JVM调优工具概述
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介前面章节,我们已经介绍了如何通过GC日志去分析系统的运行情况。本
smart哥
·
2024-01-19 08:51
jvm专题
jvm
JVM实战(25)——元数据区优化
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、案例背景本章介绍的案例比较特殊,是由于人为设置JVM参数错误,而导致
smart哥
·
2024-01-19 08:51
jvm专题
jvm
JVM实战(27)——内存溢出概述
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介从本章开始,我们将介绍JVM中的内存溢出异常——OutofMem
smart哥
·
2024-01-19 08:21
jvm专题
jvm
JVM实战(26)——SystemGC
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、案例背景本章将介绍一个因为程序员同学不懂JVM的GC机制而导致的系统
smart哥
·
2024-01-19 08:44
jvm专题
jvm
Hotspot
源码解析
-第二十章-字典表创建和基础类预加载(四)
20.5字典表创建和基础类预加载20.5.1systemDictionary.cpp/hpp20.5.1.1SystemDictionary::initializevoidSystemDictionary::initialize(TRAPS){//Allocatearraysassert(dictionary()==NULL,"SystemDictionaryshouldonlybeinitial
多栖码农
·
2024-01-19 03:52
Java虚拟机
java
Hotspot
源码解析
-第二十章-系统类及其方法以符号形式存储在符号表(三)
20.4系统类及其方法以符号形式存储在符号表20.4.1vmSymbolls.cpp/hpp20.4.1.1vmSymbols::initialize这块实现中用到了很多宏定义,所以在讲解时,需要先宏展开,下面根据用到的顺序介绍各个宏定义及其宏展开结果#defineVM_SYMBOL_BODY(name,string)string"\0"staticconstchar*vm_symbol_bodi
多栖码农
·
2024-01-19 02:48
Java虚拟机
java
HashMap
源码解析
看多了面试还是不会说?看这篇文章就够了
本来今天想要重新整理一些hashMap的源码阅读解析文章的相关内容的,后面发现网上关于HashMap的
源码解析
已经有很多专业的分析了,在看了一遍源码之后,我就直接整理一下HashMap相关的一些热门面试题的答案吧
先生zeng
·
2024-01-19 02:31
SAP UI5 初学者教程之七 - JSON 模型初探试读版
Jerry从2014年加入SAP成都研究院CRMFiori开发团队之后开始接触SAPUI5,曾经在SAP社区和“汪子熙”微信公众号上发表过多篇关于SAPUI5工作原理和
源码解析
的文章。
JerryWang_汪子熙
·
2024-01-19 01:33
workflow
源码解析
:GoTask
关于gotask提供了另一种更简单的使用计算任务的方法,模仿go语言实现的gotask。使用gotask来实计算任务无需定义输入与输出,所有数据通过函数参数传递。与ThreadTask区别ThreadTask是有模板,IN和OUT,ThreadTask依赖输入输出。而GoTask不依赖,而是直接将函数打包成go这个callback,等待线程池消费。1.示例程序我们想异步的运行一个加法函数:void
敬先生
·
2024-01-19 00:34
Poco库
c++
YARN ApplicationMaster与ResourceManager之间基于applicationmaster_protocol.proto协议的allocate()接口
源码解析
在YarnApplication运行期间,ApplicationMaster相当于这个Application的监护人和管理者,负责监控、管理这个Application的所有Attempt在cluster中各个节点上的具体运行,同时负责向YarnResourceManager申请资源、返还资源等。可以说,ApplicationMaster与ResourceManager之间的通信是整个Yarn应用从
麦兜和小可的舅舅
·
2024-01-18 22:26
hadoop
open-source
yarn
yarn
AM
RM
allocate
hadoop
【PostgreSQL内核学习(二十四) —— (ALTER MATERIALIZED VIEW)】
ALTERMATERIALIZEDVIEW概述
源码解析
修改物化视图的属性和行为AlterTableStmt结构体AlterTableMoveAllStmt结构体重命名RenameStmt结构体设置对象依赖于扩展
J.Kuchiki
·
2024-01-18 22:07
PostgerSQL
postgresql
数据库
【JUC】ReentrantReadWriteLock
源码解析
文章目录ReentrantReadWriteLock读写锁缓存更新策略实现原理成员属性加锁原理写锁原理读锁原理解锁原理StampedLockReentrantReadWriteLock读写锁独占锁:指该锁一次只能被一个线程所持有,对ReentrantLock和Synchronized而言都是独占锁共享锁:指该锁可以被多个线程锁持有ReentrantReadWriteLock其读锁是共享锁,写锁是独
小小Yi学编程
·
2024-01-18 18:33
JUC
java
开发语言
ThreadLocal
源码解析
文章目录set()get()remove()一段代码,我们来挨着分析分析publicstaticvoidmain(String[]args)throwsInterruptedException{ThreadLocalthreadLocal=newThreadLocal>{//实际想要存储的值Objectvalue;//构造方法Entry(ThreadLocalk,Objectv){//继承了Wea
小小Yi学编程
·
2024-01-18 18:33
java
【Poco库
源码解析
】Poco库中的通知
1、介绍PocoPocoPoco中的通知,是消息源通过中间载体将消息发送给观察者,通知可以分为同步通知和异步通知。下图是同步通知,消息发送流程:2.同步通知2.1消息classNotification:publicRefCountedObject{public:typedefAutoPtrPtr;Notification();virtualstd::stringname()const;protec
敬先生
·
2024-01-18 17:56
Poco库
c++
【Poco库
源码解析
】Poco库的事件
1.使用示例#include"Poco/BasicEvent.h"#include"Poco/Delegate.h"#includeusingPoco::BasicEvent;usingPoco::Delegate;classSource{public:BasicEventtheEvent;voidfireEvent(intn){theEvent(this,n);//theEvent.notify
敬先生
·
2024-01-18 17:18
Poco库
c++
axios的原理及
源码解析
面试官:你了解axios的原理吗?有看过它的源码吗?一、axios的使用关于axios的基本使用,上篇文章已经有所涉及,这里再稍微回顾下:发送请求importaxiosfrom'axios';axios(config)//直接传入配置axios(url[,config])//传入url和配置axios[method](url[,option])//直接调用请求方式方法,传入url和配置axios[
C+ 安口木
·
2024-01-18 12:11
前端开发
面试系列
前端
网络
JVM实战(15)——Full GC调优
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介本章将会讲解一个频繁FullGC的案例,示例来自于JVM基础篇中
smart哥
·
2024-01-18 11:17
jvm专题
jvm
Spring Boot
源码解析
- 自动装配原理
引言SpringBoot自动装配是SpringBoot框架的一个关键特性,它的目标是让开发者能够快速构建Spring应用程序,减少繁琐的配置工作。一、注解解析@SpringApplication从启动类@SpringApplication注解入手,@SpringBootApplication是一个组合注解,它是SpringBoot框架中常用的一个主要注解之一。它结合了多个注解,简化了SpringB
陈皮太
·
2024-01-18 07:32
java
spring
boot
java
JVM实战(24)——大对象优化
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、案例背景本章将介绍一个因为大对象而导致的频繁GC问题,其本质也是开发
smart哥
·
2024-01-18 01:02
jvm专题
jvm
JVM实战(22)——jamp和MAT实战
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介我们通过jstat进行分析,发现FullGC非常频繁,基本上每隔
smart哥
·
2024-01-18 01:32
jvm专题
jvm
JVM实战(23)——内存碎片优化
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、案例背景本案例的背景是一个高峰期每秒十万QPS的社交APP,这类AP
smart哥
·
2024-01-18 01:32
jvm专题
jvm
JVM实战(21)——jstat实战(2)
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc
源码解析
阶段4、深入jdk其余
源码解析
阶段5、深入jvm
源码解析
一、简介上一章,我们通过jstat命令分析了BI系统中新生代对象的GC情
smart哥
·
2024-01-18 01:59
jvm专题
jvm
Hotspot
源码解析
-第十八章-元空间的创建与分配
元空间就是从C堆中划出来的一片完整的区域,为了提升元数据的内存分配效率,又把元空间按若干个chunk内存块管理起来,其中chunk块又分为已使用和空间两种类型,并分别用VirtualSpaceList和ChunkManager来管理,chunk内存块之间以链表的形式关联起来,同时为了满足不同元数据占用内存大小的内存分配,chunk内存块也是有多种不同大小的chunk,如SpecializedChu
多栖码农
·
2024-01-17 19:53
Java虚拟机
java
Hotspot
源码解析
-第二十章-虚函数表
这一章涉及到一个vtable(虚函数表)的概念,所以先从虚函数表讲起20.1虚函数表刚学Java入门的时候,有一个概念叫多态,这是面向对象语言都有的特性,C++也不例外,在C++中,虚函数的主要作用就是实现多态机制。多态就是用父类的指针指向子类的实例,再通过父类指针调用实际子类的成员函数,该技术可以让父类的指针有“多种形态”,所以叫多态,也是一种泛型技术。所谓泛型技术,就是试图使用不变的代码来实现
多栖码农
·
2024-01-17 19:53
Java虚拟机
java
Hotspot
源码解析
-第二十章-基础类型的数组类型对象的创建与分配
20.2基础类型的数组类型创建该函数的入口在init.cpp->init_globals(),然后再调用universe.cpp->universe2_init()函数,实际执行的函数是Universe::genesis,所以从这开始源码的解析。解析前先了解一下Klass的概念,大家思考个问题:我们编写的java类在JVM中是以何种形式存在的呢?答:其实他就是以Klass类存在的,Klass类就是
多栖码农
·
2024-01-17 19:53
Java虚拟机
java
Hotspot 内存管理之ClassLoaderData
源码解析
目录一、ClassLoaderData1、Dependencies2、ChunkedHandleList3、JNIMethodBlock4、init_null_class_loader_data/init_dependencies5、构造和析构函数6、record_dependency7、add_to_deallocate_list/free_deallocate_list8、metaspace_
孙大圣666
·
2024-01-17 19:21
Hotspot和Linux内核
ClassLoaderData
JNIMethodBlock
Dependencies
Hotspot启动和初始化
源码解析
目录1、JVM启动入口2、JLI_Launch3、可移植性4、JavaMain5、JavaVM和JNIEnv对象6、JNI_CreateJavaVM7、Threads::create_vm学习一个复杂项目源码的最关键的一步是找准应用启动和对外提供服务的入口,从这些入口处开始顺藤摸瓜式的查看代码,可以对项目的各功能模块有一个整体宏观上的认识,并以此为切入点,有的放矢,按需深入了解各功能模块的实现细节
孙大圣666
·
2024-01-17 19:21
Hotspot和Linux内核
JVM启动
JVM初始化
JavaVM
JNIEnv
Hotspot
源码解析
一
文章目录call_stub_call_stub_entry例程JAVA数据结构与面向对象解析魔数java字节码试了一天,windows一直失败.无奈了.安装了一个linux明天试试.詹姆斯老爷子通过一种中间语言形式,兼容所有操作系统.刚开始是通过C进行编译,但是效率极低,为了提高中间语言执行效率,老爷子从指令集出发,高度抽象出了java指令集.从而当一个程序编译成中间语言也就是class后,运行时
Nuan_Feng
·
2024-01-17 19:51
HotSpot源码解析
Hotspot
源码解析
-第十九章-ClassLoaderData、符号表、字符串表的初始化
第十九章-ClassLoaderData初始化讲解本章先从一张图开始众所周知,Java类的相关信息都是存储在元空间中的,但是是怎么存储的,相信很多读者是不清楚的,这里就不得不涉及到ClassLoaderDataGraph、classLoader、classLoaderData(简称CLD)和Klass的概念及他们四者的关系,这里简单描述下他们的概念,具体细节放到类加载器那一张来讲解。Instanc
多栖码农
·
2024-01-17 19:50
Java虚拟机
java
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他