自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 带你一文了解分布式事务~

书接上文,如果不明白我之前写了什么的话,可以看下之前我文章:序列化隔离级别在数据库系统中可以解决其他隔离级别无法处理的问题,这是因为它提供了最高的隔离性和数据一致性。目前大多数提供可序列化的数据库都使用了三种技术之一。

2023-05-15 21:30:49 325 1

原创 最全的分布式事务详情,它来啰~

我们首先得理解什么是分布式事务呢?分布式事务是指在分布式系统中,涉及多个计算机或服务器的操作序列,这些操作需要满足一致性和可靠性的要求。每个操作要么全部成功执行,要么全部回滚,以保持数据的一致性和完整性。OK,概念讲完,我们知道一个东西的出现一定是为了解决一些问题的,那么分布式事务解决了我们什么样的难题呢,而它又是如何解决的呢?所以说,事务通过原子性、一致性、隔离性、持久性这几大特点,保障数据一致性和完整。性防止并发操作导致的数据竞争和冲突 提供故障容忍和持久性,确保操作的安全性和可靠性。

2023-05-15 21:28:40 512

原创 你真的理解分布式数据的分区吗?

分布式数据存储是指将数据分散存储在多个节点或服务器上的技术。而分区是将数据划分为逻辑上的片段或部分,每个分区可以在分布式系统中的不同节点上存储。分区主要是为了可扩展性。不同的分区可以放在不共享集群中的不同节点上,可以帮助实现负载均衡、高可用性、并行处理、数据本地性优化以及系统的扩展性和灵活性。通过合理的分区策略,可以充分发挥分布式存储系统的优势,提供高效、可靠的数据存储和处理能力。分区通常与复制结合使用,使得每个分区的副本存储在多个节点上。

2023-05-15 21:27:39 605

原创 一文带你深入了解分布式数据的复制原理!!

在分布式数据系统中,复制是一种重要的能力。简单来说,复制就是将数据的副本存储在多个位置,通常是在不同的服务器或节点上。你可以将这个过程想象成是一家连锁餐厅。每家分店(分布式系统的节点)都有一份菜单(数据)。这样,无论客户(用户)去哪家分店,都能得到相同的菜单。即使某家分店因为一些原因(例如装修)暂时关门,客户仍然可以去其他分店。同时,如果菜单有更新,每家分店都会收到新的菜单,以保证信息的同步。复制的困难之处在于处理复制数据的变更。

2023-05-15 21:21:36 796

原创 你真的了解索引吗

你真的了解索引吗,这篇文章将带你全面剖析索引

2023-05-15 21:17:33 260

原创 一文带你完整了解数据的编码!!

数据编码是将数据转换为计算机可读取和处理的二进制格式的过程。这篇文章带你详细了解数据的编码

2023-05-15 21:14:44 4442

原创 应用层

目录DNS(域名系统)DNS的作用域名结构域名格式域名体系结构域名解析URL (统一资源定位符)WWW(万维网)WWW服务模型指Internet参考模型的应用层, 相当与OSI的会话层、 表示层、 应用层。应用层处于网络体系结构的最高层, 在传输层的支持下,为网络用户提供各种网络服务, 包括文件服务, 电子邮件, 数据库服务, WWW服务, DNS等应用层意义在于使用户方便快捷地访问网络共...

2019-05-17 15:38:10 306

原创 设计模式之命令模式

目录意图和动机意图动机适用性结构和参与者协作效果意图和动机意图将请求封装为对象,用不同请求对客户参数化对请求排队或记录请求日志,支持可取消的操作动机对请求排队或记录请求日志,支持可取消的操作,对请求排队或记录请求日志,支持可取消的操作,只需在程序运行时指定具体的请求接收者即可只需在程序运行时指定具体的请求接收者即可适用性系统需要将请求调用者和请求接收者解耦,使得调用者和...

2019-05-17 15:12:50 144

原创 TCP

目录概述TCP报文段格式连接管理建立连接目的采用C/S方式三次握手流量管理拥塞控制TCP拥塞控制过程慢启动拥塞避免概述Internet的两个传输层协议TCP(Transmission Control Protocol) :在IP支持下, 为应用层提供面向连接的、 可靠的端到端字节流服务UDP(User Datagram Protocol) :为应用层提供非面向连接的、 不可靠的传输服务...

2019-05-09 14:49:42 286

原创 传输层

目录概述传输层协议机制传输协议数据单元TPDU类型传输地址建立连接(三次握手)释放连接(四次挥手)概述功能完成主机进程-主机进程之间的报文传输地位位于网络体系结构的中间, 作为数据通信和数据处理的分水岭, 具有承上启下的作用传输层要彻底解决网络通信问题, 使得应用层不必关心通信问题端对端的通信传输层协议在端主机上运行,路由器一般没有传输层传输层从主机层面上对网络层采取相应补救措...

2019-05-09 10:19:21 950

原创 模板方法

目录由来意图、动机和适用性结构与参与者代码示例效果由来模板方法实现父类和子类对象之间职责的划分使用继承机制使得父类和子类之间达到分工合作的目的基类中确定算法框架(不变), 子类实现具体工作(可变)意图、动机和适用性意图定义一个操作中的算法的骨架,而将一些步骤延迟到子类中子类不需要改变算法结构即可重定义算法的某些步骤动机将相同的代码放在父类中,不同的方法实现放在不同的子类中...

2019-05-09 09:46:02 99

原创 Oracle(六)PL/SQL语言

目录PL/SQL语言的结构PL/SQL组件声明部分声明常量声明变量执行部分赋值语句条件语句IF分支语句CASE循环语句LOOP…EXIT…END循环语句LOOP…EXIT WHEN…END循环语句WHILE…LOOP…END LOOP循环语句FOR…IN…LOOP…END LOOP异常处理常用函数数值型函数字符型函数日期型函数统计函数PL/SQL语言的结构块(Block)是PL/SQL程序中最...

2019-04-18 21:20:41 302

原创 Oracle(九)触发器

目录触发器的基本概念触发事件触发时间触发级别创建触发器创建语句触发器创建行触发器创建INSTEAD OF触发器创建LOGON和LOGOFF触发器启用和禁用触发器删除触发器触发器的基本概念触发事件DML语句事件:执行INSERT、UPDATE、 DELETE等语句时触发的事件DDL语句事件:执行CREATE、ALTER、DROP语句等语句时触发的事件数据库事件:执行STARTUP、SHU...

2019-04-18 20:33:14 159

原创 Oracle(八)存储过程

目录过程函数程序包PL/SQL有以下3种存储过程:过程:一种基本的存储过程,由过程名、参数和程序体组成。函数:与过程类似,只是函数有返回值。程序包:一组相关的PL/SQL过程和函数,由包名、说明部分和包体组成过程创建过程:CREATE [ OR REPLACE ] PROCEDURE 过程名[ (参数列表…) ] IS | AS[ 局部变量声明 ]BEGIN ...

2019-04-17 22:41:47 120

原创 Oracle(七)游标

目录基本概念隐式游标游标控制语句声明游标语句CURSOR打开游标语句OPEN游标取值语句FETCH关闭游标语句CLOSE游标属性游标FOR循环管理游标结果集修改游标结果集中的行删除游标结果集中的行基本概念游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结...

2019-04-17 21:58:39 211

原创 Oracle(五)配置数据库

目录初始化参数文件文本初始化参数文件PFILE服务器参数文件SPFile维护数据库实例使用SHUTDOWN命令关闭数据库实例正常关闭数据库实例以事务处理方式关闭数据库实例立即关闭数据库实例中止关闭数据库实例使用STARTUP命令启动数据库实例启动数据库实例,装载并打开数据库以指定的初始化参数文件来启动实例启动数据库实例,但不装载数据库启动数据库实例,装载数据库强制启动数据库实例以限制模式启动数据库...

2019-04-17 18:20:08 370

原创 Oracle(四)删除数据库

目录使用DROP DATABASE语句删除数据库使用DBCA命令删除数据库使用“Database Configuration Assistant”工具可以删除数据库使用DROP DATABASE语句删除数据库使用DBCA命令删除数据库第一种方式同样不再多叙述使用DROP DATABASE语句删除数据库在删除数据库之前,需要用户以SYSDBA或SYSOPER身份登录,并...

2019-04-17 17:44:53 367

原创 Oracle(三) 数据库创建

目录创建数据库使用DBCA命令创建数据库使用SQL语句手动创建数据库执行命令使用DBCA配置数据库创建数据库有以下几种方法可以创建数据库使用“Database Configuration Assistant”工具创建Oracle数据库使用DBCA命令创建数据库使用SQL语句手动创建数据库第一种方式网上教程很多,就不叙述。以下第一第二项只需执行这一种,后面两项需全部执行...

2019-04-17 17:28:51 621

原创 Oracle(二)SQL PLUS与网络配置工具

目录运行SQL PlusSQL Plus的命令列表示例网络配置工具Oracle数据库服务和数据库实例标识SQL Plus是用户和服务器之间的一种接口,用户可以通过它使用SQL语句交互式访问数据库。可以实现以下功能:输入SQL命令,对SQL Plus环境进行配置输入、编辑、存储、读取和运行SQL命令以及PL/SQL块与终端用户进行交互将查询结果输出到报表表格中,设置表格格式和计算公式,...

2019-04-17 16:48:23 345

原创 Oracle(一)

目录简介Oracle 11g体系结构概述网格结构数据库逻辑结构方案(schema)表空间(Tablespace)段(Segment)区间(Extent)数据块(Data block)数据库物理结构控制文件数据文件日志文件数据库实例数据库实例4种状态内部存储结构Oracle的内存结构共享池数据库缓冲区高速缓存重做日志缓冲区大型共享池Java池进程结构后台进程数据库写入程序(DBWn)日志写入器(LG...

2019-04-16 20:45:21 313

原创 IP协议

目录概述IP分组格式IP地址IP地址概述IP地址结构路由器IP寻址Internet控制协议ICMP协议ARP协议ARP协议的功能地址解析ARP分组格式ARP缓存检测IP地址是否可用IP子网子网子网掩码子网划分概述IP协议是Internet体系结构的核心协议, 该协议已成为连接异构网络的工业标准。IP提供非面向连接的数据报服务, 每个IP分组长度 ≤64K字节, 传输效率高, 但不能保证分组...

2019-04-13 21:25:47 1014

原创 网络层

目录概述网络层功能网络层与数据链路层的区别报文分组网络地址虚电路与数据报分组交换技术虚电路数据报路由选择路由选择及其分类静态路由算法扩散法(洪泛法)固定式路由选择动态路由算法热土豆算法逆向自学习算法距离向量路由算法 (D-V算法)链路状态路由选择算法(L-S算法D-V和L-S算法的比较路由协议简介路由信息协议(RIP)开放最短路由优先协议(OSPF)边界网关协议(BGP)IP协议概述网络层功能...

2019-04-13 10:59:53 886

原创 设计模式之享元模式

目录意图和动机意图动机关键适用性结构与参与者代码示例效果意图和动机意图运用共享技术有效地支持大量细粒度的对象避免大量拥有相同内容的小类的开销使大家共享一个对象动机OO技术很好地解决一些灵活性或可扩展性问题某些情况对象数量太多,导致运行时代价巨大Flyweight是一个共享对象享元模式通过共享技术实现相同/相似对象重用关键关键概念是内部状态和外部状态内部状态存储于...

2019-04-13 10:52:46 173

原创 设计模式之代理模式

目录意图适用性结构与角色代码示例效果类似模式意图为其他对象提供一种代理以控制对这个对象的访问适用性远程(Remote) 代理:为一个对象在不同地址空间提供局部代表虚拟(Virtual) 代理:在需要创建开销很大对象时缓存对象信息保护(Protection) 代理:控制对原始对象的访问智能引用(Smart Reference)代理:当一个对象被引用时,提供一些额外的操作,例如记录访问...

2019-04-12 16:24:31 99

原创 Java源码-hashmap

目录API要点汇总关系图函数概要源码解析API要点汇总允许空值与空键与Hashtable大致相同,但是不同步不保证映射顺序,特别是不能保证order(不知道翻译成什么)在其中不随时间变化HashMap实例有两个影响其性能的参数:初始容量和负载因子(load factor)。容量是哈希表中的桶数,初始容量就是创建哈希表时的容量。负载因子是衡量在哈希表的容量被自动增加之前,哈希表被允许获得...

2019-04-10 17:23:12 114

原创 数据链路层

目录概述差错控制传输差错的特征差错控制方法流量控制停—等协议滑动窗口协议顺序接收管道协议 (回退n协议)选择重传协议数据链路层协议举例HDLC协议PPP协议概述数据链路层主要功能在相邻节点之间保证数据帧的“透明” 传输。数据帧数据帧是数据链路层的最小数据传输单元, 即DPDU。数据帧的一般格式:差错控制传输差错的特征差错产生的主要原因热噪声: 传输介质内的分子热运动。...

2019-04-10 12:02:50 562

原创 设计模式之组合模式

目录由来意图动机适用情形结构与参与者代码示例效果实现类似的模型由来组合模式有时候又叫做部分-整体模式。在树型结构的问题中,模糊了简单元素和复杂元素的概念, 客户程序可以向处理简单元素一样来处理复杂元素,使得客户程序与复杂元素的内部结构解耦。组合对象既可以包括单一对象,也可以包括组合对象意图将对象组合成树形结构——“部分/整体” 层次结构使用户对单一对象和组合对象使用具有一致性接口...

2019-04-10 09:39:12 97

原创 设计模式之外观模式

目录设计原则意图动机适用性结构和参与者效果代码示例评价设计原则迪米特法则:应当使得软件的不同对象彼此之间尽量“老死不相往来”,降低系统维护成本意图提供了一个统一的接口,用来访问子系统中的一群接口Facade定义了一个高层接口,让子系统更容易使用动机将一个系统划分成为若干个子系统有利于降低系统的复杂性设计目标是使子系统间的通信和相互依赖关系达到最小途径之一是就是引入一个 外观...

2019-04-09 17:12:21 90

原创 物理层

目录数据通信基础通信系统模型模拟通信与数字通信信号带宽信道物理传输媒体(通信介质)无线传输媒体数字信号的编码数字调制技术模拟信号的脉码调制数据同步方式多路复用技术数据通信基础通信系统模型信源: 将各种信息转换成原始物理信号,如计算机,手机,电话机等。变换器/反变换器: 对原始物理信号进行变换/反变换,以便适合在给定的信道上传输,如MODEM , TA(终端适配器) ,光/电转换器等。...

2019-04-09 15:59:56 661

原创 Go的顺序编程

目录变量变量声明变量初始化变量赋值匿名变量常量类型布尔类型整型浮点型复数类型字符串数组数组切片变量变量声明Go语言引入了关键字var,而类型信息放在变量名之后,变量声明语句不需要使用分号作为结束符var v1 intvar v2 stringvar v3 [10]int // 数组var v4 []int // 数组切片var v5 struct {f int}var v6 ...

2019-04-08 21:41:32 194

原创 Java源码-Collection

目录结构介绍方法add(E) boolean / addAll(Collection 《? extend E>)booleanclear()voidremoveAll (Collection <? extend E>)booleanremove(Object o)sizeboolean isEmpty()总结结构介绍通过阅读API文档,整理如下几点要素:这个接口通常用...

2019-04-08 21:29:43 200

原创 设计模式之装饰模式

目录由来意图动机适用场合结构、角色和协作代码示例效果由来装饰模式以对客户透明的方式动态地给一个对象附加上更多的责任,不改变接口,但加入责任(不是通过继承,而是通过组合实现)意图装饰模式别名包装器(Wrapper),旨在动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比子类更为灵活。动机希望给某个对象而不是整个类添加一些功能继承机制一种有效途径,但不够灵活较为灵活的方式...

2019-04-08 17:14:36 73

原创 Java内存模型

目录Java内存模型主内存与工作区内存之间的交互对于volatile型变量的特殊规则对于long与double型变量的特殊规则原子性、可见性、有序性内存模型可以理解为在特定的操作协议下,对特定的内存或高速缓存进行读写访问的过程抽象。为了解决处理器与内存速度之间的矛盾,引入了高速缓存的存储交互方式,但同时也引入了新的问题:缓存一致性,当多个处理器的运算任务搜涉及到一块主内存区域时,可能导致各自的...

2019-04-08 16:21:12 126

原创 设计模式之桥梁模式

目录由来目的适用场景结构角色效果实例由来传统地,当一个抽象可能有多个实现时,通常用继承来协调它们:抽象类定义该抽象的接口,具体的子类则用不同的方式加以实现。但是此方法有时不够灵活:继承机制将抽象部分与它的实现部分绑定,难以对抽象部分和实现部分独立地进行修改、扩充和重用。目的桥接模式将抽象部分与实现部分分离,使它可以独立的变化。适用场景不希望在抽象和它的实现部分之间有一个固定的绑定关...

2019-04-06 21:04:15 79

原创 Go语言初识

目录go语言特性自动垃圾回收更丰富的内置类型函数多返回值错误处理匿名函数和闭包类型和接口并发编程反射go语言特性自动垃圾回收内存泄露的最佳解决方案是在语言级别引入自动垃圾回收算法(Garbage Collection,简称GC)。所谓垃圾回收,即所有的内存分配动作都会被在运行时记录,同时任何对该内存的使用也都会被记录,然后垃圾回收器会对所有已经分配的内存进行跟踪监测,一旦发现有些内存已经不再...

2019-04-03 14:32:47 79

原创 设计模式之适配器模式

目录目的适用场景角色适配器类适配器对象适配器效果目的将一个类的接口转换成客户希望的另一个接口适用场景使用一个已存在的类,而它的接口不符合要求创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作使用一些已经存在的子类,但不可能通过子类化以匹配各自接口。对象适配器可以适配它的父类接口角色Client:代表引用用户期望接口的类Ta...

2019-04-03 09:58:00 71

原创 虚拟机类加载机制

目录类加载时机类加载的过程加载验证准备解析初始化类加载器双亲委派模型虚拟机把描述类的数据从Class文件加载到内存,并对数据进行效验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。Java语言类型的加载、连接和初始化过程都是在程序运行期间完成的,Java里天生可以动态扩展语言的特性就是利用运行期动态加载和动态连接这个特点实现的。类加载时机其生命周期...

2019-04-03 09:13:37 101

原创 Java类文件结构

目录Class类文件结构魔数与Class文件版本常量池访问标志类索引、父类索引与接口索引集合字段表集合方法表集合属性表集合实现余元无关性基础仍然是虚拟机与字节码储存格式。Java虚拟机不和包括Java在内的任何语言绑定,只与‘Class’文件这种特定的二进制文件格式进行关联,任何其他语言的实现者都可以将Java虚拟机作为语言的交付媒介,例如JRuby等其它语言编辑器一样可以将程序代码翻译成Cla...

2019-04-02 11:37:20 245

原创 Java虚拟机的垃圾收集器与内存分配策略

目录垃圾收集器工作地点判断对象是否‘死亡’算法引用计数算法可达性分析算法垃圾收集算法标记-清除算法复制算法标记-整理算法分代收集算法垃圾收集器Serial收集器ParNew收集器Parallel Scavenge收集器Serial Old收集器Parallel Old收集器CMS收集器(Concurrent Mark Sweep)G1收集器内存分配与回收策略垃圾收集器工作地点在java虚拟机中...

2019-03-30 23:21:41 143

原创 java虚拟机中内存区域

java虚拟机运行时数据区java虚拟机在执行java程序时会将其所管理的内存划分为若干不同的数据区域,如下图(图片来自于百度图片):程序计数器内存空间小,可以看做当前线程执行字节码的行号指示器。每条线程都独立拥有一个程序计数器,互不干扰,独立存储。若线程执行java方法,指向指令地址,若执行Native方法,值为空(Undefined)唯一没有规定任何OOM情况的区域。J...

2019-03-29 23:28:08 87

空空如也

空空如也

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

TA关注的人

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