自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker网络详解

Docker Overlay 网络是一种用于跨主机通信的虚拟网络,它使用 VXLAN 技术将多个 Docker 主机上的容器连接到同一个网络中。在实现上,Docker Overlay 网络主要基于 VXLAN 和 Swarm Mode 技术,并使用 Linux Bridge 和 VXLAN 技术来实现容器之间的通信。

2025-04-13 17:19:40 784

原创 从零到1读懂docker

定义匿名数据卷,可实现挂载功能,可以将内地文件夹或者其他容器中得文件夹挂在到这个容器中。在启动容器时忘记挂载数据卷,会自动挂载到匿名卷。作用:避免重要的数据,因容器重启而丢失,这是非常致命的。(容器使用的是AUFS,这种文件系统不能持久化数据,当容器关闭后,所有的更改都会丢失。避免容器不断变大。

2025-04-09 21:48:04 758

原创 Redis集群模式

在扩缩容的时候,需要进行数据迁移。如果超过(N/2 + 1)数量的master节点都投票给了某个从节点,那么选举通过,这个从节点可以切换成master,如果在 cluster-node-timeout*2 的时间内从节点没有获得足够数量的票数,本次选举作废,更新配置纪元,并进行第二轮选举,直到选出新的主节点为止。考虑这样的一种情况,如果只有3个节点,且节点在哈希环上的分布是可能是这个样子的,即使数据分布的均匀,大量的数据存储在节点0上,而节点1、2不会存储多少数据,节点0的负载会很高,这种情况就是。

2025-01-22 22:48:31 1953

原创 Redis哨兵

Redis的哨兵模式,就是在主从模式的基础上,额外部署若干独立的哨兵进程,通过哨兵进程去监视者Redis主从节点的状态,一旦发现主节点宕机,则哨兵可以重新从剩余slave节点中推选一个新的节点并将其升级为master节点,以此保证整个系统功能可以正常使用。频道发送该 Sentinel 节点对于主节点的判断以及当前 Sentinel 节点的信息,同时每个 Sentinel 节点也会订阅该频道,来了解其他 Sentinel 节点以及它们对主节点的判断。

2025-01-22 22:13:12 1632

原创 Redis 复制原理

RDB文件生成完毕之后,主节点会将这个RDB发送给从节点,从节点会先写入本地磁盘,然后再从本地磁盘加载到内存1,然后主节点会将内存中缓存的写命令发送给从节点,从节点也会同步这些数据。在进行快照同步时,会进行很耗时的文件IO操作,在非SSD磁盘存储时,快照同步会对系统的负载产生较大影响。对于从节点开始接收RDB快照到接收完成期间,主节点仍然响应读写命令,因此主节点会把这期间写命令数据保存到复制客户端缓冲区内,当从节点加载完RDB之后,主节点再把缓冲区内的数据发送给从节点,保证主从之间数据一致性。

2024-12-22 20:43:23 592

原创 redis的数据结构

返回指定排名范围的成员: zrange key start end[withscores]或者zrevrange key start end [withscores]返回指定分数范围的成员: zrangebyscore key min max [withscores] [limit offset count]交集:zinterstore destination numbers key [key …求多个集合的差集: sdiff key [key …增: sadd key element[…

2024-12-22 20:37:28 590

原创 认识redis

String、hash(哈希)、list(列表)、set(集合)、zset(有序集合)、Bitmap(位图)、HyperLogLog、GEO(地理信息定位)键过期、发布订阅、Lua脚本功能、简单的事务功能、流水线功能(Pipeline)缓存、排行榜系统、计数器应用、社交网络、消息队列系统。b.redis使用C语言实现的。c. redis使用的是单线程。纯内存存储、IO多路复用技术、单线程架构。

2024-12-22 20:30:44 243

原创 redis服务端参数大全

该限制包括16字节的标头。aof文件可能在尾部是不完整的,当redis启动的时候,aof文件的数据被载入内存。注意,这需要足够的内存(理论上需要双倍的内存,一份是从主节点接收的RDB文件,一份是从RDB文件转换为当前实例的内存),如果没有,将会存在OOM的风险。当开启混合持久化时,主进程先fork出子进程将现有内存副本全量以RDB方式写入aof文件中,然后将缓冲区中的增量命令以AOF方式写入aof文件中,写入完成后通知主进程更新相关信息,并将新的含有 RDB和AOF两种格式的aof文件替换旧的aof文件。

2024-12-22 20:25:06 500

原创 scrap使用

一:使用import scrapyfrom stock.items import StockItem, StockDetailItemclass ThsSpider(scrapy.Spider): name = 'ths' handle_httpstatus_list = [401] allowed_domains = ['q.10jqka.com.cn', 'stockpage.10jqka.com.cn'] base_url = "https://q.10jqk

2022-02-22 23:20:41 453

原创 python re模块

为什么要学正则表达式实际上爬虫一共就四个主要步骤:明确目标 (要知道你准备在哪个范围或者网站去搜索)爬 (将所有的网站的内容全部爬下来)取 (去掉对我们没用处的数据)处理数据(按照我们想要的方式存储和使用)我们在昨天的案例里实际上省略了第3步,也就是"取"的步骤。因为我们down下了的数据是全部的网页,这些数据很庞大并且很混乱,大部分的东西使我们不关心的,因此我们需要将之按我们的需要过滤和匹配出来。那么对于文本的过滤或者规则的匹配,最强大的就是正则表达式,是Python爬虫世界里必不可少的神兵

2022-02-05 18:02:50 191

原创 python的urllib学习

1.基本方法urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)- url: 需要打开的网址- data:Post提交的数据- timeout:设置网站的访问超时时间直接用urllib.request模块的urlopen()获取页面,page的数据格式为bytes类型,需要dec

2022-02-05 17:58:12 84

原创 java面向对象

1面向对象特性1.1:继承继承是子类继承父类的特征和行为, 能使得‘a.子类对象(实例)具有父类的实例域和方法b.子类从父类继承方法,使得子类具有父类相同的行为1.2 多态a.多态是同一个行为具有多个不同表现形式或形态的能力b.多态就是同一个接口, 使用不同的实例而执行不同操作c.同一个事件发生在不同的对象上会产生不同的结果1.3 封装a.封装是一种将抽象性函数接口的实现细节部分包装,隐藏起来的方法b.封装被认为是一种保护屏障, 防止该类的代码和数据被外部类定义的代码随机访问c.封装

2022-01-09 18:49:15 300

原创 java基本语法

一:关键字二位运算符三运算符与表达式条件运算符 即三元运算符instanceof 运算符:该运算符用于操作对象实例,检查该对象是否是一个特定类型四 异常处理4.1 Finally用法1 finally语句必定会执行(除非程序/线程提前退出)2finally执行时机再try/catch代码退出前,即所有代码块后,跳出逻辑前3finally执行语句不会影响原有返回值4finally中如执行返回(retuirn或者抛异常),会代替原有返回逻辑4.2 常见异常...

2021-12-19 22:47:00 451

原创 java引用数据类型

一.定义1.类似c的指针,引用类型存放的时对象的引用2.引用变量再声明时被指定位一个特定的类型,一旦声明后,类型就不能被改变3.引用类型包括:类,接口,数组,枚举,注解4.所以的引用类型的默认值都是null5.引用变量可以用来引用任何与之兼容的类型二:类包装包装类就是把基本数据类型和其辅助方法的封装到类中包装类作用:基本类型不是类,所以无法获得类的基本特性,无法参与转型、泛型、集合、反射等过程,包装类的出现就是为了你补这个缺陷三包装类的拆装箱包装类的装箱是指把基本类型装入包装类的过

2021-12-18 21:46:19 2266

原创 java数据类型

1:System.out.print h和 System.out.println区别System.out.print 将双引号的内容原样输出,不换行System.out.println 将双引号的内容原样输出,换行转义字符\: 就是转义字符,作用: 将后面普通的字母转换为特殊含义\n:换行\t: 距离前面有一个制表符位置2:变量的作用域:作用域是指作用范围,变量在什么范围中有效作用范围就是离它最近的{}局部变量:定义在方法中成员变量: 定义在类中,方法外3:java是一种强类型语言,

2021-12-18 17:18:25 429

原创 认识java

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-12-18 16:40:34 73

空空如也

空空如也

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

TA关注的人

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