自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 分布式事务三 解决方案之2PC(两阶段提交)

分布式事务三 解决方案之2PC(两阶段提交)

2022-01-12 15:40:01 1588 2

原创 分布式事务二 基础理论

分布式事务一 基础理论前言:书接上文《分布式事务一 分布式事务基础概念》,我们了解到了分布式事务的基础概念。与本地事务不同的是,分布式系统之所以叫分布式,是因为提供服务的各个节点分布在不同机器上,相互之间通过网络交互。不能因为有一点网络问题就导致整个系统无法 提供服务,网络因素成为了分布式事务的考量标准之一。因此,分布式事务需要更进一步的理论支持,接下来,我们一起了解一下分布式事务的CAP理论,通过理论知识指导我们确定分布式事务控制的目 标,从而帮助我们理解每个解决方案。一、 CAP理论

2021-11-15 11:29:59 2162

原创 分布式事务一 分布式事务基础概念

分布式事务一 基础概念1. 事务概念1.1. 生活例子什么是事务?举个生活中的例子:你去小卖铺买东西,“一手交钱,一手交货”就是一个事务的例子,交钱和交货必 须全部成功,事务才算成功,任一个活动失败,事务将撤销所有已成功的活动。 明白上述例子,再来看事务的定义:1.2 事务原理事务可以看做是一次大的活动,它由不同的小活动组成,这些活动要么全部成功,要么全部失败2. 本地事务2.1. 本地事务描述在计算机系统中,更多的是通过关系型数据库来控制事务,这是利用数据库本身的事务特性来实现的,因此叫数

2021-11-04 18:03:50 188

原创 分布锁详解 Redis分布锁原理详解

分布锁详解和Redis分布锁原理详解一、分布式锁分布式锁概念:分布式锁其实可以理解为:控制分布式系统有序的去对共享资源进行操作,通过互斥来保持一致性。 举个不太恰当的例子:假设共享的资源就是一个房子,里面有各种书,分布式系统就是要进屋看书的人,分布式锁就是保证这个房子只有一个门并且一次只有一个人可以进,而且门只有一把钥匙。实现步骤加锁A获得了钥匙,进入房子里,看书。解锁A离开房间,并且还了钥匙。锁超时为了避免死锁,我们可以在一定单位时间内,将A清除房间,并且把钥匙放回原处。

2021-09-24 18:28:55 562

原创 PHP位运算详解与实例演示

PHP位运算详解PHP位运算一、位运算符例子名称结果$a & $bAnd(按位与将把 $a 和 $b 中都为 1 的位设为 1。$a | $bOr(按位或)将把 $a 和 $b 中任何一个为 1 的位设为 1。$a ^ $bXor(按位异或)将把 $a 和 $b 中一个为 1 另一个为 0 的位设为 1。~ $aNot(按位取反)将 $a 中为 0 的位设为 1,反之亦然。$a << $bShift left(左移)

2021-09-18 16:25:25 348

原创 进制转换 二进制、十进制、八进制、十六进制相互转换

进制转换 二进制、十进制、八进制、十六进制相互转换进制介绍一、二进制二进制(binary)是在数学和数字电路中指以2为基数的记数系统,是以2为基数代表系统的二进位制。用两个不同的符号0(代表零)和1(代表一)来表示,逢二近1。数字电子电路中,逻辑门的实现直接应用了二进制,因此现代的计算机和依赖计算机的设备里都用到二进制。每个数字称为一个比特(Bit,Binary digit的缩写)二、八进制八进制,Octal,缩写OCT或O,一种以8为基数的计数法,采用0,1,2,3,4,5,6,7八个

2021-09-18 16:21:50 601

原创 Zookeeper安装 Zookeeper启动 报错Error: JAVA_HOME is not set and java could not be found in PATH

Zookeeper启动 报错Error: JAVA_HOME is not set and java could not be found in PATH背景:原本打算安装 `calal`, `kafka` 和 `clickhouse_sinker` 配合使用。读取`mysql`的`binlog`日志,实现 `mysql` 数据同步到`clickhouse`。重新启动一个新的虚拟机,开始尝试。虽然`kafka2.8`可以不需要`zookeeper`的情况下执行。但是本人还是钟爱`kafka2.

2021-08-24 12:05:04 3740 1

原创 Redis 脚本

Redis 脚本一、Redis 脚本 脚本定义Redis 脚本,使用 Lua 解释器来执行脚本。 Redis 2.6 版本通过内嵌支持 Lua 环境。执行脚本的常用命令为 EVAL。Redis事务有一定的局限性。可以使用reids脚本代替redis队列。二、Redis脚本优势高效性:减少网络开销及时延,多次redis服务器网络请求的操作,使用LUA脚本可以用一个请求完成。数据可靠性:Redis会将整个脚本作为一个整体执行,中间不会被其他命令插入。复用性:LUA脚本执行后会永久存储在Red

2021-08-17 21:13:42 582

原创 Redis管道技术(PHP Redis管道用法)

Redis管道技术一、Redis管道技术原理Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。服务端处理命令,并将结果返回给客户端。Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。二、管道技术的优势管道技术最显著的优势是提高了 redis 服务的性能。三、查看 redi

2021-08-17 20:38:52 406

原创 Redis事务

Redis事务一、redis事务原理Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证:批量操作在发送 EXEC 命令前被放入队列缓存。收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。Redis 特性:单个 Redis 命令的执行是原子性的,但 Redis 没有在事务上增加任何维持原子性的机制,所以 Redis 事务的执行并不是原子性的。事务可以理解为一个打包的批量执

2021-08-17 19:47:49 57

原创 PHP使用Redis的BitMap特性实现签到功能

PHP使用Redis的BitMap特性实现签到功能一、BitMapBitMap原理bitMap 位图并不是一种数据结构,其实也就是 byte 数组,用二进制表示,只有 0 和 1 两个数字。基于string数据类型的按位操作符,高阶数据类型的一种。bitMap支持的最大位数是2^32位,使用512M内存就可以存储多达42.9亿的字节信息。BitMap操作命令gitbit用法:getbit key offset含义:对key所存储的字符串值,获取指定偏移量上的位(bit)setb

2021-04-21 16:50:35 806

原创 PHP中cal_days_in_month函数和calendar扩展详解

PHP中cal_days_in_month函数和calendar扩展详解问题:在开发中无意间发现cal_days_in_month函数不可使用。然后就开始研究学习。1、cal_days_in_month函数功能用法功能cal_days_in_month — 返回某个历法中某年中某月的天数用法cal_days_in_month ( int $calendar , int $month , int $year ) : int参数calendar :用来计算的某个历法month :选定历

2021-04-07 11:37:30 1152 2

原创 PHP中curl扩展库和file_get_contents的区别与性能

PHP基础知识PHP中curl扩展库和file_get_contents的区别与性能一.性能二.功能区别参考PHP中curl扩展库和file_get_contents的区别与性能一.性能性能对比(只针对 GET 请求)性能分析图标urlfile_get_contents次0.02s执行10次9.06s执行100次110.90s执行200次212.46s执行500次496.21s性能对比代码a. curl的代码<?ph

2021-03-31 15:24:22 210

原创 php开发中的坑,php数组指针

PHP数组指针指针含义:数组的内部指针是数组内部的组织机制,指向一个数组中的某个元素。默认是指向数组中第一个元素通过移动或改变指针的位置,可以访问数组中的任意元素。开发中的坑-实例:情况一:$arr = array(1,2,3,4,5);foreach ($arr as $key => $value) {echo $key,'@',$value,"";

2017-07-07 17:31:00 1270

空空如也

空空如也

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

TA关注的人

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