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
leveldb源码剖析
MySQL 源码|55 - 语法解析(V2):基础查询语句(query_specification)|V20240915
目录文档:MySQL源码|
源码剖析
文档目录源码位置(版本=MySQL8.0.37):sql/sql_yacc.yy前置文档:MySQL源码|68-语法解析(V2):LOCKING子句(锁定读取)|V20240909MySQL
长行
·
2024-09-15 14:28
MySQL源码
mysql
源码
语法解析
查询
go
leveldb
的原理简述(基于golang的go
leveldb
库)
简介go
leveldb
是基于LSM-Tree实现的针对处理写多读少场景的解决方案,通常用于构建写多读少的存储引擎整体架构图如下基于用户接口层简述原理吧Get,按key查询数据,首先区内存中的数据,如果内存中没有则依次从硬盘中的
陈墨1234
·
2024-09-10 00:08
golang进阶之路
源码学习
golang
开发语言
后端
经验分享
笔记
db
Leveldb
源码分析--9
6SSTable之36.5读取sstable文件6.5.1类层次Sstable文件的读取逻辑在类Table中,其中涉及到的类还是比较多的,如图6.5-1所示。图6.5-1Table类导出的函数只有3个,先从这三个导出函数开始分析。其中涉及到的类(包括上图中为画出的)都会一一遇到,然后再一一拆解。本节分析sstable的打开逻辑,后面再分析key的查找与数据遍历。6.5.2Table::Open()
sparkliang
·
2024-09-09 04:23
Leveldb
分布式系统
rust嵌入式key/value数据库
文章目录项目介绍sled已知问题如何使用
leveldb
-rs如何使用rust-rocksdb如何使用lmdb-rs如何使用功能对比性能测试对比插入不同的长度的key/valuemonotonicinsert
kk3909
·
2024-09-06 07:59
rust
Unity读书系列《Unity高级编程:主程手记》——C#技术要点
文章目录前言一、业务逻辑优化技巧二、Unity3d中C#的底层原理三、List底层
源码剖析
四、Dictionary底层
源码剖析
五、浮点数的精度问题六、委托、事件、装箱、拆箱七、算法总结前言本文旨在总结某一概念的性质
adogai
·
2024-09-05 20:15
unity
编辑器
游戏引擎
c#
架构
nginx
源码剖析
--内存池
作者:July、dreamice、阿波、yixiao。出处:http://blog.csdn.net/v_JULY_v/。引言Nginx(发音同enginex)是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师IgorSysoev所开发,最初供俄国大型的入口网站及搜寻引擎Rambler(俄文:Рамблер
elevenma
·
2024-09-05 04:31
nginx
c语言
转载
nginx
服务器
Java源码学习之高并发编程基础——AQS
源码剖析
之阻塞队列(下)
1.前言&目录前言:在上一篇文章AQS
源码剖析
之阻塞队列(上)中介绍了以独占锁模式下AQS的基本原理,AQS仅仅起到了一个“维持线程等待秩序”的作用,那么本篇文章继续讲解共享锁模式下的特点。
永往不庭
·
2024-09-01 13:27
java
学习
后端
性能优化
Redis
源码剖析
和注释(二十)--- 网络连接库剖析(client的创建/释放、命令接收/回复、Redis通信协议分析等)
Redis网络连接库剖析1.Redis网络连接库介绍Redis网络连接库对应的文件是networking.c。这个文件主要负责客户端的创建与释放命令接收与命令回复Redis通信协议分析CLIENT命令的实现我们接下来就这几块内容分别列出源码,进行剖析。2.客户端的创建与释放redis网络链接库的源码详细注释2.1客户端的创建Redis服务器是一个同时与多个客户端建立连接的程序。当客户端连接上服务器
men_wen
·
2024-08-31 14:33
Redis
Redis
3.2.8
源码剖析注释
redis
网络
源码
注释
通信
linux网络流程分析(一)---网卡驱动
/www.cnblogs.com/gogly/archive/2012/06/10/2541573.html分析linux网络的书已经很多了,包括《追踪LinuxTCP/IP代码运行》《Linux内核
源码剖析
wang603603
·
2024-08-30 15:55
linux
linux
STL 容器和适配器的特性简介
C++STL的实现:vector底层数据结构为数组,支持快速随机访问list底层数据结构为双向链表,支持快速增删deque底层数据结构为一个中央控制器和多个缓冲区,详细见STL
源码剖析
P146,支持首尾
小菜鸡的蜕变之路
·
2024-08-27 04:24
STL读书笔记
C++学习笔记
Netty核心技术及
源码剖析
-Netty核心模块
Bootsrap、ServerBootstrap1、Bootsrap意思是引导,一个Netty应用通常由一个Bootsrap开始,主要作用是配置整个Netty程序,串联各个组件,Netty中Bootstrap类是客户端程序的启动引导类,ServerBootstrap是服务器端启动引导类。2、常见的方法有publicServerBootstrapgroup(EventLoopGroupparentG
Shaw_Young
·
2024-08-22 19:33
MySQL 源码|51 - 语法解析:高级表达式
目录文档:MySQL源码|
源码剖析
文档目录源码位置(版本=MySQL8.0.37):sql/sql_yacc.yy前置文档:MySQL源码|50-语法解析:基础表达式(simple_expr)在梳理了基础表达式
长行
·
2024-08-22 06:28
MySQL源码
mysql
源码
语法解析
高级表达式
深入理解ngx_http_upstream_vnswrr_module负载均衡模块
目录1.引言2.启用vnswrr负载均衡模块3.
源码剖析
3.1配置指令分析3.2负载均衡算法配置初始化3.3负载均衡请求上下文的初始化3.4获取peer1.引言 之前有讨论了nginx的swrr算法的两个问题
码农心语
·
2024-03-17 15:22
nginx学习
LINUX
c++开发
http
负载均衡
网络协议
swrr
vnswrr
nginx
Java外观模式
源码剖析
及使用场景
外观模式一、介绍二、家庭影院项目案例使用三、JavaAPI或框架中应用分析三、Spring框架ApplicationContext源码一、介绍外观模式(FacadePattern)是一种结构型设计模式,它为子系统中的一组接口提供了一个统一的高层接口,使得子系统更加容易使用。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式的主要作用有以下几点:简化系统的调用复杂性。通过外观模
Java语录精选
·
2024-03-11 12:10
JAVA设计模式
java
外观模式
设计模式
spring
grpc、https、oauth2等认证专栏实战17:grpc-go自定义认证之base64验证介绍
已发表的技术专栏(订阅即可观看所有专栏)0 grpc-go、protobuf、multus-cni技术专栏总入口1 grpc-go
源码剖析
与实战 文章目录2 Protobuf介绍与实战图文专栏
码二哥
·
2024-02-20 21:15
码二哥的技术专栏
golang
kubernetes
grpc-go
零入门容器云网络
网络协议
《STL
源码剖析
》---stl_iterator.h阅读笔记
STL设计的中心思想是将容器(container)和算法(algorithm)分开,迭代器是容器(container)和算法(algorithm)之间的桥梁。迭代器可以如下定义:提供一种方法,能够依序寻访某个容器内的所有元素,而又无需暴露该容器的内部表达方式。在阅读代码之前,要先了解一个新概念:Traits编程技法templatestructMyIter{typedefTvalue_type//内
KangRoger
·
2024-02-20 11:06
STL
stl
c++
迭代器
iterator
《算法零基础100讲》(第75讲) 滑动窗口(一) - 固定窗口
文章目录零、写在前面一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、习题练习零、写在前面 这是《算法零基础100讲》专栏打卡学习的第75天了。
英雄哪里出来
·
2024-02-19 22:59
《算法零基础100讲》
算法
数据结构
滑动窗口
Java ArrayList
源码剖析
当涉及到存储和操作数据时,动态数组容器类ArrayList是Java中最常用的集合类之一。本文会介绍它的基本用法、迭代操作、实现的一些接口,最后分析它的特点。基本用法ArrayList是一个泛型容器,新建ArrayList需要实例化泛型参数,比如:ArrayListintList=newArrayList();ArrayList的主要方法有:publicbooleanadd(Ee)//添加元素到末
洒水水儿
·
2024-02-19 14:28
Java常用类的源码剖析
java
开发语言
Java ArrayDeque
源码剖析
LinkedList实现了队列接口Queue和双端队列接口Deque,Java容器类中还有一个双端队列的实现类ArrayDeque,它是基于数组实现的。我们知道,一般而言,由于需要移动元素,数组的插入和删除效率比较低,但ArrayDeque的效率却非常高,它是怎么实现的呢?本文就来详细探讨。实现原理ArrayDeque内部主要有如下实例变量:privatetransientE[]elements;
洒水水儿
·
2024-02-19 14:28
Java常用类的源码剖析
java
开发语言
Java Arrays
源码剖析
Java中有一个类Arrays,包含一些对数组操作的静态方法,本文主要就来讨论这些方法以避免重新造轮子,在需要的时候自己实现它不具备的功能。toStringArrays的toString()方法可以方便地输出一个数组的字符串形式,以便查看。它有9个重载的方法,下面列举两个常用的方法分析publicstaticStringtoString(int[]a)publicstaticStringtoStr
洒水水儿
·
2024-02-19 14:57
Java常用类的源码剖析
java
开发语言
Java 抽象容器类
源码剖析
总体介绍抽象容器类接口和具体容器类的关系如图所示,顶层包括Collection、List、Set、Queue、Deque和Map6个抽象容器类。AbstractCollection:实现了Collection接口,被抽象类AbstractList、AbstractSet、AbstractQueue继承,ArrayDeque也继承自AbstractCollection。AbstractList:父类
洒水水儿
·
2024-02-19 14:22
Java常用类的源码剖析
java
开发语言
windows vs 自己编译源码
leveldb
然后使用自己编译的文件
1准备源码文件1.1第一种方法git下载源码vs项目中git
leveldb
源码和gitthird_partygoogletest-CSDN博客1.2第二种方法手动下载然后把第三方的源码下载复制到third_party
tenc1239
·
2024-02-19 13:44
vs
c++
cmake
c++
Java LinkedList
源码剖析
ArrayList随机访问效率很高,但插入和删除性能比较低;LinkedList同样实现了List接口,它的特点与ArrayList几乎正好相反。除了实现了List接口外,LinkedList还实现了Deque和Queue接口,可以按照队列、栈和双端队列的方式进行操作。本节会介绍这些用法,同时介绍其实现原理。基本用法LinkedList的构造方法与ArrayList类似,有两个:一个是默认构造方法
洒水水儿
·
2024-02-19 10:05
Java常用类的源码剖析
java
开发语言
Mybatis
源码剖析
-- 初始化过程(传统方式)
一、读取配置文件,读成字节输入流,注意:现在还没解析入口使用Resources.getResourceAsStream()方法获取字节输入流publicclassMybatisTest{/***传统方式*@throwsIOException*/@Testpublicvoidtest1()throwsIOException{//1.读取配置文件,读成字节输入流,注意:现在还没解析InputStrea
Travis_Wu
·
2024-02-15 01:03
Android
源码剖析
----EventBus的工作原理
现实开发中用到的框架为了方便更好的理解加深记忆,归纳如下:在开发中使用eventbus主要是为了进行传值和传递一些意图,第一次使用后就被这个框架的灵活和解耦性给折服。。。去熟悉eventbus的工作原理之前得首先知道一个设计模式那就是观察者模式,什么是观察者模式呢?就是为了定义对象间的一种一对多的依赖关系,即当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。整个eventbus
简书不简单iiii
·
2024-02-14 14:13
TreeMap就这么简单【
源码剖析
】
前言声明,本文用得是jdk1.8前面章节回顾:Collection总览List集合就这么简单【
源码剖析
】Map集合、散列表、红黑树介绍HashMap就是这么简单【
源码剖析
】LinkedHashMap就这么简单
Java3y
·
2024-02-14 12:48
Java StringBuilder
源码剖析
+面试题整理
在String中提到,如果字符串修改操作比较频繁,应该采用StringBuilder和StringBuffer类,这两个类的方法基本是完全一样的,它们的实现代码也几乎一样,唯一的不同就在于StringBuffer类是线程安全的,而StringBuilder类不是。基本用法创建StringBuilder对象:StringBuildersb=newStringBuilder();通过append方法添
洒水水儿
·
2024-02-13 11:13
Java常用类的源码剖析
java
面试
开发语言
多线程并发编程10-CopyOnWriteArrayList
源码剖析
今天来说一说CopyOnWriteArrayList类,纵观JUC包下并发List只有CopyOnWriteArrayList类。CopyOnWriteArrayList是一个线程安全的ArrayList,从它的命名也能看出在进行写操作的时候会进行复制,这种写时复制策略会产生弱一致性问题。下面对CopyOnWriteArrayList类继续剖析。在CopyOnWriteArrayList类中都是围
Demo_zfs
·
2024-02-12 18:01
Java String
源码剖析
+面试题整理
由于字符串操作是计算机程序中最常见的操作之一,在面试中也是经常出现。本文从基本用法出发逐步深入剖析String的结构和性质,并结合面试题来帮助理解。String基本用法在Java中String的创建可以直接像基本类型一样定义,也可以new一个Strings1="HelloWorld";Strings2=newString("HelloWorld");String可以通过+实现合并Strings="
洒水水儿
·
2024-02-12 09:34
Java常用类的源码剖析
java
开发语言
前端
【Spring源码分析】循环依赖的底层
源码剖析
循环依赖的底层
源码剖析
一、预知知识二、循环依赖的底层
源码剖析
1.Spring是如何存储半成品Bean的?getEarlyBeanReference方法的源码分析2.Spring是如何解决的循环依赖呢?
假正经的小柴
·
2024-02-11 20:08
Java源码分析
spring
数据库
java
gRPC-go
源码剖析
与实战 技术专栏介绍
grpc-go专栏图片.jpg1、背景介绍无论是分布式架构,还是微服务架构,服务之间如何高效、可靠性的通信是具有一定的挑战性的;那么,解决方案之一就是使用RPC通信;而由google开发的grpc-go是一个高性能、开源和通用的RPC框架,面向移动和HTTP2设计。在涉及到网络通信的领域内,经常可以看到grpc-go的身影;目前,已经在Kubernetes、Docker、Istio等优秀开源框架中
码二哥
·
2024-02-11 14:10
Vue.js
源码剖析
(一)-响应式原理(1)vue2源码启动与调试
电脑:mac;vue版本:2.7.14;编辑器:IntelliJIEDA一、下载源码github地址我是先下载了zip压缩包,直接使用https地址从github拉取代码会很慢:下载完源码之后可以放在自己的仓库里,我是放在了自己的gitlab仓库里。把项目解压到本地之后,根据gitlab的提示推送现有代码:下载完之后,在idea中打开项目:从远程仓库拉取代码之后,可以看到已经有一条初始化代码的gi
一棵开花的树,枝芽无限靠近你
·
2024-02-11 03:21
Vue
vue.js
前端
javascript
Vue
源码剖析
一:相当于Vue的构造函数实现
1.重点方法:1.1Object.keys(obj):得到对象自身可枚举属性组成的数组前提是指定属性名可以枚举1.2Object.defineProperty(obj,prop,descriptor)示例:constobj={firstName:'A',lastName:'B'}//obj.fullName='A-B'Object.defineProperty(obj,'fullName',{//
领带衬有黄金
·
2024-02-10 17:17
cpp11新特性之智能指针(下):深入理解现代cpp中的智能指针shared_ptr、unique_ptr 以及 weak_ptr
今天给大家带来的是对于shared_ptr、unique_ptr以及weak_ptr的深入理解,通过测试案例和
源码剖析
对这三种重要的智能指针的使用方法,注意事项以及适用范围进行了全面的总结,相信经过这些测试大家对于智能指针的理解会更上一层楼
unknown C++ beginner
·
2024-02-08 10:37
c++学习
c++
学习
笔记
开发语言
阻塞队列ArrayBlockingQueue,LinkedBlockingQueue
源码剖析
文章目录1.阻塞队列用途以及特征1.1继承结构1.2用途1.3与普通队列的区别2.ArrayBlockingQueue
源码剖析
2.1数据结构与类变量2.2构造方法2.3入队2.4出队3.LinkedBlockingQueue
Yungang_Young
·
2024-02-08 07:46
Java
java
数据结构
开发语言
并发编程
多线程并发编程9-ReentrantReadWriteLock
源码剖析
前面文章说到了ReentrantLock,解决线程间安全问题,使用ReentrantLock就可以,但是ReentrantLock是独占锁,某一个时刻只能一个线程获取锁,在写少读多的场景下,显然ReentrantLock并不能满足次场景。今天要说的ReentrantReadWriteLock锁就能满足写少读多的场景。ReentrantReadWriteLock锁采用读写分离的策略,读锁是一个共享锁
Demo_zfs
·
2024-02-08 07:42
【flink状态管理(2)各状态初始化入口】状态初始化流程详解与
源码剖析
文章目录1.状态初始化总流程梳理2.创建StreamOperatorStateContext3.StateInitializationContext的接口设计。4.状态初始化举例:UDF状态初始化在TaskManager中启动Task线程后,会调用StreamTask.invoke()方法触发当前Task中算子的执行,在invoke()方法中会调用restoreInternal()方法,这中间包括
roman_日积跬步-终至千里
·
2024-02-08 06:14
#
flink源码
flink
java
数据库
SpringBoot原理深入及
源码剖析
2.SpringBoot原理深入及
源码剖析
传统的Spring框架实现一个Web服务,需要导入各种依赖JAR包,然后编写对应的XML配置文件等,相较而言,SpringBoot显得更加方便、快捷和高效。
每天都在掉头发
·
2024-02-07 23:31
C++ STL: vector使用及
源码剖析
vector使用vector定义语句作用vectora(n);指定容器大小为nvectora(n,x);指定容器大小为n,并初始化所有元素为xvector>a(m,vector(n));m行n列的二维数组,可以直接用a[i][j]访问访问vector容器中元素的操作语句作用vec.at(index)返回由index指定的位置上的元素vec[index]返回由index指定的位置上的元素vec.fr
暮色_年华
·
2024-02-07 23:36
c++
c++
开发语言
《STL
源码剖析
》学习笔记-第6章(一) set相关算法
STL中定义的set要求元素不得重复且已经排序。而set算法要求的都是有序区间(输出也是有序的),但元素可以重复出现。STL提供了4个set相关的算法,分别是并集(union)、交集(intersection)、差集(difference)和对称差集(symmetricdifference),这4个算法接受的set必须是有序区间,都至少接受4个参数,分别表示两个set区间。一般而言,set算法前4
爱橙子的OK绷
·
2024-02-07 20:16
STL
stl
算法
《STL
源码剖析
》学习笔记——第六章:算法之set
set相关算法STL提供了四种与set相关的算法,分别是并集(union)、交集(intersection)、差集(difference)和对称差集(symmetricdifference),这4个算法接受的set必须是有序区间,都至少接受4个参数,分别表示两个set区间。所谓的set可细分为数学上的定义和STL的定义两种,数学上的set允许元素重复而未经排序,;例如{1,5,5,3,2},STL
Still_Believe_
·
2024-02-07 20:45
STL源码剖析学习笔记
set
数据结构
STL
算法
Java集合
源码剖析
之ArrayList
Java集合
源码剖析
之ArrayList1ArrayList概括1.1特性1.2数据结构2ArrayList
源码剖析
2.1继承关系2.2成员属性2.3构造方法2.4核心方法2.4.1添加元素2.4.2查询元素
JavaBigData1024
·
2024-02-07 02:25
源码阅读
Java
ArrayList
源码
Java集合
源码剖析
-工具类
一.Collections工具类概述:1.Collections(注意不是Collection,而是Collections,多了一个s)2.它是一个集合工具类3.方法分类:常规操作(查找,最大,最小等)、排序、线程安全(同步)操作、不可变集合packagecom.cxy.collection;importjava.util.ArrayList;importjava.util.Arrays;impo
AHU_
·
2024-02-07 02:25
Java
集合类
Java集合源码解析
Java Character
源码剖析
Character类除了封装了一个char外,还封装了Unicode字符级别的各种操作,是Java文本处理的基础。下面结合源码分析Character的贡献。Unicode也许你没听过Unicode,但应该见过UTF-8。UTF-8(8-bitUnicodeTransformationFormat)是一种常用的Unicode字符编码方案之一。它使用变长编码方式,将Unicode码点编码成1至4个字节
洒水水儿
·
2024-02-07 02:54
Java常用类的源码剖析
java
开发语言
Java 基本数据类型包装类
源码剖析
基本类型的包装类Java的八种基本类型都有对应的包装类,包装类内部有一个实例变量,保存对应的基本类型的值,这个类一般还有一些静态方法、静态变量和实例方法,以方便对数据进行操作。包装类的类名除了Integer和Character外,其他类名称与基本类型基本一样,只是首字母大写。装包和拆包包装类与基本类型的转换代码结构是类似的,每种包装类都有一个静态方法valueOf(),接受基本类型,返回引用类型,
洒水水儿
·
2024-02-07 02:53
Java常用类的源码剖析
java
开发语言
Java Integer
源码剖析
valueOf的实现下面展示了Integer对象缓存机制的基本原理。Java为了提高性能和减少内存使用,在-128到127(包含)这个范围内的整数值上实现了缓存。当调用Integer.valueOf(inti)时,如果这个整数处于缓存范围内,那么就会从缓存中返回相应的Integer实例。publicstaticIntegervalueOf(inti){assertIntegerCache.high
洒水水儿
·
2024-02-07 02:51
Java常用类的源码剖析
java
算法
开发语言
STL容器的底层数据结构
multimap哈希表hashtable(底层数据结构)unordered_setunordered_mapunordered_multiset/unordered_multimap各容器的具体用法各容器的详细
源码剖析
你喜欢梅西吗
·
2024-02-07 01:33
链表
数据结构
stl
Apollo配置中心之Server端
三、
源码剖析
1、配置监听1.1、建立长轮询1.1.1、逻辑描述1.1.2、时序图1.1.3、代码位
xdpcxq1029
·
2024-02-05 12:12
java
Runtime
源码剖析
对象、类(元类)与isa
源码面前,了无秘密在iOS开发的过程中,对象、类应该是我们接触最的一个部分,本篇文章就以对象为主题,分一下对象和类在底层是如何实现的,让你更深入了解iOS开发。从这篇博客开始我们就会进行Runtime源码分析,所以你需要准备一份最新的源代码,源码建议从Apple官方获取本篇博客所用的是750.1版本的objc4源码(目前最新版)对象objc_object定义在OC中每一个对象都是一个结构体,结构体
萨缪
·
2024-02-05 08:20
JAVASE进阶:Collection高级(2)——
源码剖析
ArrayList、LinkedList、迭代器
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:JAVASE进阶:Collection高级(1)——源码分析contains方法、lambda遍历集合订阅专栏:JAVASE进阶希望文章对你们有所帮助ArrayList的底层其实还是比较复杂的,如果你去尝试阅读源码的话,但是这又是面试常考的问题,网上有些面经会说当创建ArrayList的时候会在底层创建长度为10的数组,后续会以1
布布要成为最负责的男人
·
2024-02-04 23:04
JAVASE进阶
java
javase
jvm
面试
数据结构
链表
源码分析
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他