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源码剖析
【设计模式】八、桥接模式
文章目录举例问题分析基本介绍桥接模式在JDBC的
源码剖析
桥接模式的注意事项和细节JDBC举例现在对不同手机类型的不同品牌实现操作编程(比如:开机、关机、上网,打电话等),传统方法对应的类图:问题分析扩展性问题
Lucky_Turtle
·
2023-10-13 15:09
设计模式
设计模式
桥接模式
近期集中看了一些视频,记录一下
为此,也在网上找了别人所谓深入到OS实现的课程和实验项目,但是,基本上没有覆盖"从无到有"的内容,而是成了类似"
源码剖析
"的形式。又比如自己想讲授"高性能数据计算"(自己琢磨的名字,用以
喜欢苹果的梨
·
2023-10-13 00:35
07-Zookeeper分布式一致性协议ZAB
源码剖析
上一篇:06-Zookeeper选举Leader
源码剖析
整个Zookeeper就是一个多节点分布式一致性算法的实现,底层采用的实现协议是ZAB。
关老头
·
2023-10-12 09:55
Zookeeper从入门到精通
分布式
zookeeper
云原生
java
spring
java-zookeeper
06-Zookeeper选举Leader
源码剖析
上一篇:05-Zookeeper典型使用场景实战一、为什么要看源码提升技术功底:学习源码里的优秀设计思想,比如一些疑难问题的解决思路,还有一些优秀的设计模式,整体提升自己的技术功底深度掌握技术框架:源码看多了,对于一个新技术或框架的掌握速度会有大幅提升,看下框架demo大致就能知道底层的实现,技术框架更新再快也不怕快速定位线上问题:遇到线上问题,特别是框架源码里的问题(比如bug),能够快速定位,
关老头
·
2023-10-12 09:13
Zookeeper从入门到精通
zookeeper
分布式
云原生
java
【有点狂的手撕STL】STL
源码剖析
精读 000
STL
源码剖析
精读前言通过刷题感受到了C++中STL的妙用,十分的想要提高自己对于STL的理解以及运用能力,因此开设此专栏,并希望能够带领大家一起感受C++中STL的魅力。
JYSimilar
·
2023-10-12 05:49
c++
开发语言
Zookeeper源码构建+ 选举leader
源码剖析
1、启动或leader宕机选举流程2、客户端与服务端交互流程(NIO或Netty)3、写入数据的ZAB一致性协议(如何保证消息的顺序性)4、Watch监听触发机制一、从源码启动zookeeper1、启动单机zookeeperzookeeper源码下载地址,选择分支3.5.8:https://github.com/apache/zookeeper.git源码导入idea后,如果org.apache.
萧 炎
·
2023-10-11 23:55
#
zookeeper
Zookeeper选举Leader
源码剖析
(一)
目录1.源码下载2.启动ledaer选举流程1.启动或leader宕机选举流程2.客户端与服务端交互流程(NIO或Netty)3.写入数据的ZAB一致性协议(如何保证消息的顺序性)4.Watch监听触发机制1.源码下载https://github.com/apache/zookeeper.git从代码切入,从zkServer.sh文件切入指定程序参数,启动QuorumPeerMain.java的m
bingtanghulu_6
·
2023-10-11 23:22
java-zookeeper
zookeeper
java
Visual Leak Detector内存泄漏检测机制
源码剖析
VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/125529931C++软件分析工具从入门到
dvlinker
·
2023-10-11 05:16
C/C++技术分享
VLD
内存泄漏检测
源码剖析
堆内存
堆管理
CountDownLatch源码解析
在了解闭锁之前需要先了解AQS,因为CountDownLatch的实现需要依赖于AQS共享锁的实现机制,详细的源码分析参见AQS简介与
源码剖析
。1、Demo示列输出:从上面的列子可以
挨踢男孩
·
2023-10-11 05:32
go echo 访问mysql_Go实战--golang中使用echo和MySQL搭建api(labstack/echo、go-sql-driver/mysql)...
实战–也许最快的Go语言Web框架kataras/iris初识四(i18n、filelogger、recaptcha)Go实战–也许最快的Go语言Web框架kataras/iris初识三(Redis、
leveldb
袁均林
·
2023-10-11 00:27
go
echo
访问mysql
Paper Reading:【FAST 2016】Wisckey-Separating Keys from Values
LSM-Treeand
LevelDB
Wisckey是针对LSM-Tree在SSD存储下的优化。
ankerjian
·
2023-10-10 18:07
深入理解LSM-Tree
compaction策略Size-tiredcompactionstrategy(STCS)/TieredleveledcompactionLeveled-NHybridTime-Window比较工业实现
leveldb
RocksDBWriteStallsscyllaDB
杰特JET
·
2023-10-10 14:35
云存储技术
存储技术
数据库
lsm
数据库
LSM-Tree:原理与介绍
LSM-Tree:原理与介绍 LSMTree(log-structuredmerge-tree)是一种文件组织结构的数据结构,目前在不少数据库中都有使用到,如SQLite、
LevelDB
、HBase在Mongodb
心的海洋848
·
2023-10-10 14:34
笔记
C/C++编程:trivial和non-trivial
今天看书看到侯捷的《STL
源码剖析
》里提到trivial和non-trivial及POD类型,查了些资料理解了一下。
OceanStar的学习笔记
·
2023-10-10 14:53
C++
Spring IOC
源码剖析
—— IOC 容器初始化主体流程
1、SpringIoC的容器体系IoCro容器时Spring的核心模块,时抽象了对象管理、依赖关系管理的框架解决方案。Spring提供了很多容器,其中BeanFactory时顶层容器,不能被实例化,定义了所有IoC容器必须遵从的一套原则,具体的容器实现可以增加额外的功能。比如:我们常用到的ApplicationContext,其下更具体的实现如ClassPathXmlApplicationCont
小诺。
·
2023-10-10 12:26
Java框架学习笔记
spring
java
后端
Leetcode 1206. 设计跳表 (算法实现跳表的代码)
这道题目是Redis,
LevelDB
中使用到的经典数据结构。通过这道题目可以理解跳表的插入,删除,查找过程。这里提供的代码是标准的算法实现版本,通过使用常规链表指针和一个向下的指针来实现。
wwxy261
·
2023-10-10 06:56
算法
Chrome
源码剖析
(一)
原文出处:http://www.cnblogs.com/duguguiyu/archive/2008/10/02/1303095.html开源是口好东西,它让这个充斥着大量工业垃圾代码和教材玩具代码的行业,多了一些艺术气息和美的潜质。它使得每个人,无论你来自米国纽约还是中国铁岭,都有机会站在巨人的肩膀上,如果不能,至少也可以抱一把大腿。。。现在我就是来抱大腿的,这条粗腿隶属于Chrome(开源项目
yuanhubilie
·
2023-10-09 13:20
C/C++
源码
Chrome
源码剖析
【序】 && 【一】
原文地址为:Chrome
源码剖析
【序】&&【一】【序】开源是口好东西,它让这个充斥着大量工业垃圾代码和教材玩具代码的行业,多了一些艺术气息和美的潜质。
wangchaoqi1985
·
2023-10-09 13:43
chrome
多线程
源码
Spring
源码剖析
-事务源码之@Transactionl解析
前言在上一章我们分析了Spring的AOP的源码,本篇文章是对事务的源码分析,我们都知道事务的管理是基于AOP实现的,所以有了上一篇的铺垫这一章会比较简单一点。事务的源码我会分两章写,一张写Transcational的解析,一张写事务的执行流程。先上一个图,待会儿可以根据这个图来看源码事务配置案例配置事务管理器,开启注解事务支持...省略...标记方法需要事务publicclassUserServ
墨家巨子@俏如来
·
2023-10-09 00:47
《Spring源码深度剖析》
Spring事务源码
java集合框架Set子接口之HashSet
源码剖析
感兴趣的话大家可以关注一下公众号:猿人刘先生,欢迎大家一起学习,一起进步,一起来交流吧!HashSetHashSet类实现了由哈希表(实际上是HashMap实例)支持的Set接口,底层采用HashMap来保存的数据,存在HashSet中的元素是无序且不重复的并且HashSet是线程不安全的,这种不重复其实是由HashMap实现的,所以HashSet的实现也是相对比较简单的,对于它的操作其实都是调用
lingering fear
·
2023-10-08 06:25
java
java
开发语言
数据结构
Linux编程之epoll示例
基础原理理解请参考这篇:IO-同步,异步,阻塞,非阻塞(亡羊补牢篇)select主要解决的问题:(详细请参考:select用法&原理详解(
源码剖析
))select/epoll区别:如果这篇文章说不清epoll
lanzhihui_
·
2023-10-07 20:47
Linux-C编程
epoll
[STL
源码剖析
] 自增和自减运算符的重载
运算符重载是C++中一个很有用的特性,允许程序员对自定义的类进行运算符重载,使自定义的类能够像int等基本数据类型一样使用。在运算符重载中,自增和自减运算符的重载因为其操作数的问题而呈现出与其它运算符重载不一样的特性。先来看一个自增自减运算符重载的例子#include#include#includeusingnamespacestd;classINT{friendostream&operatorm
luofengmacheng
·
2023-10-06 23:49
C++
c++
STL
[STL
源码剖析
] list中的sort()函数
由于list底层是采用双向循环链表实现的,因此,list的迭代器不能向vector迭代器一样进行随机访问,list的迭代器类型是BidirerctionalIterators,而STL提供的算法sort()只接受RamdonAccessIterator,所以list不能使用STL提供的算法sort(),必须用list自己的成员函数sort()。templatevoidlist::sort(){if
luofengmacheng
·
2023-10-06 23:49
C++
c++
STL
Leetcode 173. 二叉搜索树迭代器
用一个Deque来做容器,虽然STL
源码剖析
上说这个deque能不用最好不用,因为其复杂度比较高,操作起来比较费事,但是图个方便嘛。下面为源码。AC解:classBSTIterator{public
达达达达锅
·
2023-10-06 07:11
Leetcode
Leetcode
分布式专题——详解Google
levelDB
底层原理
分布式——吞吐量巨强、Hbase的承载者LSMT
leveldb
简介上一篇的内容我们介绍的算是最基础
TechFlow
·
2023-10-05 11:07
大数据
分布式
LSMT
leveldb
Flutter框架启动
源码剖析
入口函数,其主要作用是注入给定的小控件并将其附加到屏幕上。voidrunApp(Widgetapp){WidgetsFlutterBinding.ensureInitialized()..scheduleAttachRootWidget(app)..scheduleWarmUpFrame();}1.初始化一个widgetsBinding的全局单例2.创建跟widget并添加到renderView上
大良造L
·
2023-10-05 08:03
观察者模式-
源码剖析
文章目录1.观察者模式的类图1.1发布者1.2订阅者2.示例代码3.项目源代码剖析3.1观察者抽象基类3.2发布者类基类:模板类3.3ConCrete观察者类:RenderTextField3.4ConCrete发布者类:TextEditController1.观察者模式的类图1.1发布者发布者提供了观察者订阅(注册)以及取消订阅(取消注册)的接口,当事件来临时,发布者会遍历每个订阅者对象,并以此
Alex1_Code
·
2023-10-04 14:23
设计模式
C++
设计模式
动态代理实现
源码剖析
—— 附录: cglib生成代理类
前言本篇主要贴一下cglib生成的代理类源码,详细的分析过程参考动态代理实现
源码剖析
——深入分析cglib动态代理附录附录1packagenet.sf.cglib.proxy;importnet.sf.cglib.core.KeyFactory
想起个帅气的头像
·
2023-10-04 12:37
Android error系列:Unable to add window -- token null is not for an application
二:
源码剖析
-为什么Dialog不能用Application的Context先试一下用Application的上下文来创建Dialog,在调用它的show方法时程序会Crash,LogCat的异常信息如下
许进进
·
2023-10-03 15:23
Android
C++:线上课程3_4——3_5(alloc)
文章目录一、lambda表达式1.mutable关键字2.lambda表达式代码示例二、STL
源码剖析
(项目)1.迭代器2.代码示例3.迭代器相应型别3.1valuetype3.2diefferencetype3.3referencetype3.4pointertype
何小柒(qi)~
·
2023-10-03 09:56
C++(线上)
c++
算法
容器
C++ STL
源码剖析
tr1与std array
C++STL
源码剖析
tr1与stdarray深入底层,层层剖析by光城0.导语
源码剖析
版本为gcc4.9.1。C++tr1全称TechnicalReport1,是针对C++标准库的第一次扩展。
guangcheng0312q
·
2023-10-03 09:54
memcached
源码剖析
源码版本:memcached-1.2.7代码仓库如下:https://gitee.com/jesson-deng/memcached-1.2.7-code-readingmemcached采用多线程的方式(编译可选),主线程负责接收新的连接,接收新的连接,轮流分配给各个子线程进行处理。
Jesson3264
·
2023-10-03 00:09
我的C++进阶之路
其中一部分书已经看过,但是没有系统的学习过,C++primer,effectivec++,C++编程思想,C++设计模式,STL
源码剖析
,C++对象模型……C++沉思录数据结构与算法,以后工作就是这个方向了
FrogView
·
2023-10-02 23:27
个人随笔与感悟
C++
levelDB
引擎
一、背景1.1、影响磁盘性能的因素:主要受限于磁盘的寻道时间,优化磁盘数据访问的方法是尽量减少磁盘的IO次数。磁盘数据访问效率取决于磁盘IO次数,而磁盘IO次数又取决于数据在磁盘上的组织方式。磁盘数据存储大多采用B+树类型数据结构,这种数据结构针对磁盘数据的存储和访问进行了优化,减少访问数据时磁盘IO次数。1.2、常用的数据结构1.2.1、B+树B+树是一种专门针对磁盘存储而优化的N叉排序树,以树
方璧
·
2023-10-02 20:49
linux
数据库
大数据
6.19-MyBatis源码—体系介绍和配置文件解析
源码剖析
课程内容主要内容:执行sql的准备底层是JDBDJDBC四大核心对象加载驱动—创建连接—开启事务—获得sql的执行者—执行sqlDriverManager:获取数据库连接【前提需要通过forName注册数据库驱动】ConnectionprepareStatemantResultSetJDBC弊端:mybatis体系结构xml文件【mybatis的主配置文件】—SqlSessionFactoryBu
Comus_j
·
2023-10-02 15:00
Spring
mybatis
oracle
数据库
关于
LevelDB
中的管道
在开源项目https://github.com/syndtr/go
leveldb
中,存在大量的管道通信,而没有使用类似于锁之类的操作,在写法上是一件特别麻烦的事情。不过这也是项目高性能的一大原因。
李天火
·
2023-10-02 04:38
map和set模拟实现
没有看过红黑树的小伙伴建议先去看看红黑树,如果没了解过map和set的小伙伴也建议先去看一看,博客链接我都放在这里了C++红黑树_KLZUQ的博客-CSDN博客C++-map和set_KLZUQ的博客-CSDN博客目录
源码剖析
代码实现迭代器全部代码
源码剖析
我们先来看看源码这是
KLZUQ
·
2023-10-01 22:05
开发语言
c++
数据结构
map
set
Flask
源码剖析
(一):Flask 启动流程
前言Flask是Python著名的web框架,其特点是轻量简单易扩展。Flask源码量挺多的,本文从比较高的维度整体看一下Flask关键结构的实现原理,文中不会细究太多细节,不多废话,开搞。考虑篇幅长度,分多篇文章来讨论,本文系列文章以Flask1.0.2为基准。前置背景知识Flask依赖于werkzeug与jinja这两个核心库,werkzeug是HTTP与WSGI相关的工具集,而jinja主要
懒编程-二两
·
2023-09-30 15:30
【Spring Cloud】Ribbon 实现负载均衡的原理,策略以及饥饿加载
文章目录前言一、什么是Ribbon二、Ribbon实现负载均衡的原理2.1负载均衡的流程2.2Ribbon实现负载均衡的
源码剖析
三、Ribbon负载均衡策略3.1负载均衡策略3.2演示Ribbon负载均衡策略的更改四
求知.
·
2023-09-30 05:52
Spring
Cloud
spring
cloud
ribbon
负载均衡
STL-06-deque
源码剖析
参考侯捷《STL
源码剖析
》deque概述vector是单向开口的连续线性空间,deque则是一种双向开口的连续线性空间。所谓双向开口,意思是可以在头尾两端分别做元素的安插和删除动作。
发如雪-ty
·
2023-09-29 07:19
STL
STL-08-priority_queue
源码剖析
priority_queue一、相关定义二、使用方法1、普通方法:2、自定义优先级:3、结构体声明方式:4、代码使用介绍三、
源码剖析
一、相关定义优先队列容器与队列一样,只能从队尾插入元素,从队首删除元素
发如雪-ty
·
2023-09-29 07:19
STL
STL-05-vector使用及其
源码剖析
vector容器是STL中最常用的容器之一,它和array容器非常类似,都可以看做是对C++普通数组的“升级版”。不同之处在于,array实现的是静态数组(容量固定的数组),而vector实现的是一个动态数组,即可以进行元素的插入和删除,在此过程中,vector会动态调整所占用的内存空间,整个过程无需人工干预。vector容器以类模板vector(T表示存储元素的类型)的形式定义在头文件中,并位于
发如雪-ty
·
2023-09-29 07:18
STL
STL-02-array使用及其
源码剖析
array容器是C++11标准中新增的序列容器,简单地理解,它就是在C++普通数组的基础上,添加了一些成员函数和全局函数。之前我在思考,STL为什么要多出这个容器呢?直接用数组它不香吗??它不快吗?非要搞出这么个玩意。后来我想明白了,我觉得它就是想要使用STL里面的算法。先把它用起来吧。首先需要引用:#includearray也就是数组嘛,所以它和我们常用的数组一样比如:inta[10],它表示1
发如雪-ty
·
2023-09-29 07:48
STL
Ubuntu 15.04: Compile Caffe with CUDA/cuDNN
Clonegitclonehttps://github.com/BVLC/caffe.gitcdcaffeInstallprerequisitessudoapt-getinstalllibprotobuf-devlib
leveldb
-devlibsnappy-devlibopencv-devlibhdf5
沉绪园
·
2023-09-28 20:28
caffe
ubuntu
SpringCloudAlibaba之Seata-2pc
源码剖析
seata客户端启动流程本章大部分是源码,源码下面都会有对其大概意思的介绍,如果源码看着头疼,可以直接看下面的介绍,可以整体对2pc有个轮廓,如果经常阅读源码的朋友,肯定能够想到入口是利用springboot的starter来做客户端相关组件的初始化,立马就能想到starter下META-INFO/spring.factories。#AutoConfigureorg.springframework
山竹之七语
·
2023-09-27 22:27
seata
2pc源码
seata源码
RxJava
源码剖析
前言本篇的文章是基于Rxjava2.1.2。从下面的一段代码中,我们从源码的角度分析RxJava的实现原理:ObservableOnSubscribeoos=newObservableOnSubscribe(){@Overridepublicvoidsubscribe(ObservableEmittere)throwsException{finalintmax=100;for(inti=1;io=
小康
·
2023-09-27 16:07
Spring
源码剖析
7:AOP实现原理详解
本文转自五月的仓颉https://www.cnblogs.com/xrq730本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看https://github.com/h2pl/Java-Tutorial喜欢的话麻烦点下Star哈文章将同步到我的个人博客:www.how2playlife.com本文是微信公众号【Java技术江湖】的《Spring和Spri
da3acf50377b
·
2023-09-27 02:13
Redis
源码剖析
——线程模型
一、Redis是单线程吗?Redis单线程指的是「接收客户端请求->解析请求->进行数据读写等操作->发送数据给客户端」这个过程是由一个线程(主线程)来完成的,这也是我们常说Redis是单线程的原因。但是,Redis程序并不是单线程的,Redis在启动的时候,是会启动后台线程(BIO)的:「关闭文件、AOF刷盘、释放内存」这些任务需要创建单独的线程来处理,因为这些任务的操作都是很耗时的,如果把这些
chuixue24
·
2023-09-27 01:11
redis
redis
数据库
缓存
LevelDB
完全解析(11):Compaction
Compaction的作用因为
LevelDB
的增删改都是通过追加写来实现的,所以需要通过后台线程的compaction来:清理过期(旧版本或者已删除)的数据。维护数据的有序性。
linjinhe
·
2023-09-27 01:59
GO
leveldb
使用方法笔记
安装gogetgithub.com/syndtr/go
leveldb
/
leveldb
使用1打开、创建数据库db,err:=
leveldb
.OpenFile(".
死鱼
·
2023-09-26 11:04
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
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
其他