redis 重建主从记录

redis 重建主从变化

说明:监控某个从节点的变化,从节点清空了 appendonlydir/ 目录,删除了 dump.rdb,重启该从节点,监测变化如下。

第一阶段

重新启动该节点期间,监测数据目录下文件变化,首先生成 temp-xxx.rdb 文件,并且该文件一直增大,在此期间日志输出如下

Defaulted container "redis" out of: redis, sentinel, split-brain-fix, redis-exporter, config-init (init)
1:C 20 Nov 2023 11:10:14.899 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 20 Nov 2023 11:10:14.899 # Redis version=7.0.9, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 20 Nov 2023 11:10:14.899 # Configuration loaded
1:S 20 Nov 2023 11:10:14.899 * monotonic clock: POSIX clock_gettime
1:S 20 Nov 2023 11:10:14.900 * Running mode=standalone, port=6379.
1:S 20 Nov 2023 11:10:14.900 # Server initialized
1:S 20 Nov 2023 11:10:14.901 * Creating AOF base file appendonly.aof.1.base.rdb on server start
1:S 20 Nov 2023 11:10:14.901 * Creating AOF incr file appendonly.aof.1.incr.aof on server start
1:S 20 Nov 2023 11:10:14.901 * Ready to accept connections
1:S 20 Nov 2023 11:10:14.901 * Connecting to MASTER 10.97.31.186:6379
1:S 20 Nov 2023 11:10:14.901 * MASTER <-> REPLICA sync started
1:S 20 Nov 2023 11:10:14.901 * Non blocking connect for SYNC fired the event.
1:S 20 Nov 2023 11:10:14.902 * Master replied to PING, replication can continue...
1:S 20 Nov 2023 11:10:14.902 * Partial resynchronization not possible (no cached master)
1:S 20 Nov 2023 11:10:19.796 * Full resync from master: 1db245adaf12b98d4dea329679a4b03b0a310272:1019321
1:S 20 Nov 2023 11:10:21.616 * MASTER <-> REPLICA sync: receiving streamed RDB from master with EOF to disk
kl logs -f redis-server-2
1:S 20 Nov 2023 10:20:02.717 * MASTER <-> REPLICA sync: Flushing old data
1:S 20 Nov 2023 10:20:02.717 * MASTER <-> REPLICA sync: Loading DB in memory
1:S 20 Nov 2023 10:20:02.718 * Loading RDB produced by version 7.0.9
1:S 20 Nov 2023 10:20:02.718 * RDB age 354 seconds
1:S 20 Nov 2023 10:20:02.718 * RDB memory usage when created 52476.26 Mb

文件变化,先产生 temp-xxx.rdb 文件,并且该文件一直增大

total 22G
drwxrwxrwx 4 root      root 4.0K Nov 20 18:14 ./
drwxr-xr-x 3 root      root 4.0K Nov 20 17:50 ../
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:14 appendonlydir/
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:14 conf/
-rw-r--r-- 1 openbayes root  22G Nov 20 18:20 temp-1700475247.1.rdb

等到跟主库的 dump.rdb 文件一样大的时候,瞬间生成 dump.rdb 文件

total 22G
drwxrwxrwx 4 root      root 4.0K Nov 20 18:20 ./
drwxr-xr-x 3 root      root 4.0K Nov 20 17:50 ../
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:14 appendonlydir/
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:14 conf/
-rw-r--r-- 1 openbayes root  22G Nov 20 18:20 dump.rdb

第二阶段

生成 dump.rbd 文件后内存用量会增加,这期间日志输出如下,文件不会有变化。

1:S 20 Nov 2023 11:16:16.342 * MASTER <-> REPLICA sync: Flushing old data
1:S 20 Nov 2023 11:16:16.342 * MASTER <-> REPLICA sync: Loading DB in memory
1:S 20 Nov 2023 11:16:16.343 * Loading RDB produced by version 7.0.9
1:S 20 Nov 2023 11:16:16.343 * RDB age 356 seconds
1:S 20 Nov 2023 11:16:16.343 * RDB memory usage when created 52477.00 Mb

第三阶段

生成 dump.rbd 文件后内存用量会增加,当内存用量增加到一定极值后,日志输出如下,开始第三阶段

1:S 20 Nov 2023 11:20:33.582 * Done loading RDB, keys loaded: 136197566, keys expired: 0.
1:S 20 Nov 2023 11:20:33.582 * MASTER <-> REPLICA sync: Finished with success
1:S 20 Nov 2023 11:20:33.582 * Creating AOF incr file temp-appendonly.aof.incr on background rewrite
1:S 20 Nov 2023 11:20:34.166 * Background append only file rewriting started by pid 579

生成 dump.rbd 文件后内存用量会增加,当内存用量增加到一定极值后开始在 appendonlydir 目录下产生 temp-appendonly.aof.incr 文件,该文件不增加

ll -h appendonlydir/
total 16K
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:24 ./
drwxrwxrwx 4 root      root 4.0K Nov 20 18:24 ../
-rw-r--r-- 1 openbayes root   88 Nov 20 18:14 appendonly.aof.1.base.rdb
-rw-r--r-- 1 openbayes root    0 Nov 20 18:14 appendonly.aof.1.incr.aof
-rw-r--r-- 1 openbayes root   88 Nov 20 18:14 appendonly.aof.manifest
-rw-r--r-- 1 openbayes root    0 Nov 20 18:24 temp-appendonly.aof.incr

同时在 appendonlydir 同级目录下产生 temp-rewriteaof-578.aof 文件,该文件一直增大

total 28G
drwxrwxrwx 4 root      root 4.0K Nov 20 18:24 ./
drwxr-xr-x 3 root      root 4.0K Nov 20 17:50 ../
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:24 appendonlydir/
drwxr-xr-x 2 openbayes root 4.0K Nov 20 18:14 conf/
-rw-r--r-- 1 openbayes root  22G Nov 20 18:20 dump.rdb
-rw-r--r-- 1 openbayes root 6.3G Nov 20 18:26 temp-rewriteaof-578.aof

第四阶段

当 temp-rewriteaof-578.aof 文件达到跟 dump.rbd 文件大一样大的时候, temp-rewriteaof-578.aof 文件消失,然后在 appendonlydir 同级目录下生成一个 temp-rewriteaof-bg-579.aof 文件

ll -h appendonlydir/
total 16
drwxr-xr-x 2 openbayes root 4096 Nov 20 19:20 ./
drwxrwxrwx 4 root      root 4096 Nov 20 19:27 ../
-rw-r--r-- 1 openbayes root   88 Nov 20 19:10 appendonly.aof.1.base.rdb
-rw-r--r-- 1 openbayes root    0 Nov 20 19:10 appendonly.aof.1.incr.aof
-rw-r--r-- 1 openbayes root   88 Nov 20 19:10 appendonly.aof.manifest
-rw-r--r-- 1 openbayes root    0 Nov 20 19:20 temp-appendonly.aof.incr
total 43G
drwxrwxrwx 4 root      root 4.0K Nov 20 19:27 ./
drwxr-xr-x 3 root      root 4.0K Nov 20 17:50 ../
drwxr-xr-x 2 openbayes root 4.0K Nov 20 19:20 appendonlydir/
drwxr-xr-x 2 openbayes root 4.0K Nov 20 19:10 conf/
-rw-r--r-- 1 openbayes root  22G Nov 20 19:16 dump.rdb
-rw-r--r-- 1 openbayes root  22G Nov 20 19:27 temp-rewriteaof-bg-579.aof

生成 temp-rewriteaof-bg-579.aof 文件的日志输出

579:C 20 Nov 2023 11:27:04.566 * Successfully created the temporary AOF base file temp-rewriteaof-bg-579.aof
579:C 20 Nov 2023 11:27:05.051 * Fork CoW for AOF rewrite: current 2 MB, peak 2 MB, average 2 MB
1:S 20 Nov 2023 11:27:05.753 * Background AOF rewrite terminated with success

片刻间,temp-rewriteaof-bg-579.aof 文件消失变成 appendonlydir 目录下 appendonly.aof.2.base.rdb 文件,temp-appendonly.aof.incr 变成 appendonly.aof.2.incr.aof 文件。并且清理原来的 appendonly.aof.1.base.rdb 和 appendonly.aof.1.incr.aof 文件

drwxrwxrwx 4 root      root 4.0K Nov 20 18:05 ./
drwxr-xr-x 3 root      root 4.0K Nov 20 17:28 ../
drwxr-xr-x 2 openbayes root 4.0K Nov 20 17:34 appendonlydir/
drwxr-xr-x 2 openbayes root 4.0K Nov 20 17:48 conf/
-rw-r--r-- 1 openbayes root  22G Nov 20 18:05 dump.rdb
ll -h appendonlydir/
total 22G
drwxr-xr-x 2 openbayes root 4.0K Nov 20 19:27 ./
drwxrwxrwx 4 root      root 4.0K Nov 20 19:27 ../
-rw-r--r-- 1 openbayes root  22G Nov 20 19:27 appendonly.aof.2.base.rdb
-rw-r--r-- 1 openbayes root    0 Nov 20 19:20 appendonly.aof.2.incr.aof
-rw-r--r-- 1 openbayes root   88 Nov 20 19:27 appendonly.aof.manifest

文件变化日志

1:S 20 Nov 2023 11:27:05.753 * Successfully renamed the temporary AOF base file temp-rewriteaof-bg-579.aof into appendonly.aof.2.base.rdb
1:S 20 Nov 2023 11:27:05.753 * Successfully renamed the temporary AOF incr file temp-appendonly.aof.incr into appendonly.aof.2.incr.aof

清理原来的 appendonly.aof.1.base.rdb 和 appendonly.aof.1.incr.aof 文件日志输出

1:S 20 Nov 2023 11:27:05.753 * Removing the history file appendonly.aof.1.incr.aof in the background
1:S 20 Nov 2023 11:27:05.754 * Removing the history file appendonly.aof.1.base.rdb in the background

该阶段日志输出如下

579:C 20 Nov 2023 11:27:04.566 * Successfully created the temporary AOF base file temp-rewriteaof-bg-579.aof
579:C 20 Nov 2023 11:27:05.051 * Fork CoW for AOF rewrite: current 2 MB, peak 2 MB, average 2 MB
1:S 20 Nov 2023 11:27:05.753 * Background AOF rewrite terminated with success
1:S 20 Nov 2023 11:27:05.753 * Successfully renamed the temporary AOF base file temp-rewriteaof-bg-579.aof into appendonly.aof.2.base.rdb
1:S 20 Nov 2023 11:27:05.753 * Successfully renamed the temporary AOF incr file temp-appendonly.aof.incr into appendonly.aof.2.incr.aof
1:S 20 Nov 2023 11:27:05.753 * Removing the history file appendonly.aof.1.incr.aof in the background
1:S 20 Nov 2023 11:27:05.754 * Removing the history file appendonly.aof.1.base.rdb in the background
1:S 20 Nov 2023 11:27:05.754 * Background AOF rewrite finished successfully

从库恢复期间,完整的日志输出如下

578:C 20 Nov 2023 10:30:50.987 * Successfully created the temporary AOF base file temp-rewriteaof-bg-578.aof
578:C 20 Nov 2023 10:30:51.486 * Fork CoW for AOF rewrite: current 2 MB, peak 2 MB, average 2 MB
1:S 20 Nov 2023 10:30:52.228 * Background AOF rewrite terminated with success
1:S 20 Nov 2023 10:30:52.228 * Successfully renamed the temporary AOF base file temp-rewriteaof-bg-578.aof into appendonly.aof.2.base.rdb
1:S 20 Nov 2023 10:30:52.228 * Successfully renamed the temporary AOF incr file temp-appendonly.aof.incr into appendonly.aof.2.incr.aof
1:S 20 Nov 2023 10:30:52.229 * Removing the history file appendonly.aof.1.incr.aof in the background
1:S 20 Nov 2023 10:30:52.229 * Removing the history file appendonly.aof.1.base.rdb in the background
1:S 20 Nov 2023 10:30:52.229 * Background AOF rewrite finished successfully

重建主从期间日志变化

kl logs -f redis-server-2
Defaulted container "redis" out of: redis, sentinel, split-brain-fix, redis-exporter, config-init (init)
1:C 20 Nov 2023 11:10:14.899 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 20 Nov 2023 11:10:14.899 # Redis version=7.0.9, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 20 Nov 2023 11:10:14.899 # Configuration loaded
1:S 20 Nov 2023 11:10:14.899 * monotonic clock: POSIX clock_gettime
1:S 20 Nov 2023 11:10:14.900 * Running mode=standalone, port=6379.
1:S 20 Nov 2023 11:10:14.900 # Server initialized
1:S 20 Nov 2023 11:10:14.901 * Creating AOF base file appendonly.aof.1.base.rdb on server start
1:S 20 Nov 2023 11:10:14.901 * Creating AOF incr file appendonly.aof.1.incr.aof on server start
1:S 20 Nov 2023 11:10:14.901 * Ready to accept connections
1:S 20 Nov 2023 11:10:14.901 * Connecting to MASTER 10.97.31.186:6379
1:S 20 Nov 2023 11:10:14.901 * MASTER <-> REPLICA sync started
1:S 20 Nov 2023 11:10:14.901 * Non blocking connect for SYNC fired the event.
1:S 20 Nov 2023 11:10:14.902 * Master replied to PING, replication can continue...
1:S 20 Nov 2023 11:10:14.902 * Partial resynchronization not possible (no cached master)
1:S 20 Nov 2023 11:10:19.796 * Full resync from master: 1db245adaf12b98d4dea329679a4b03b0a310272:1019321
1:S 20 Nov 2023 11:10:21.616 * MASTER <-> REPLICA sync: receiving streamed RDB from master with EOF to disk1:S 20 Nov 2023 11:16:16.342 * MASTER <-> REPLICA sync: Flushing old data
1:S 20 Nov 2023 11:16:16.342 * MASTER <-> REPLICA sync: Loading DB in memory
1:S 20 Nov 2023 11:16:16.343 * Loading RDB produced by version 7.0.9
1:S 20 Nov 2023 11:16:16.343 * RDB age 356 seconds
1:S 20 Nov 2023 11:16:16.343 * RDB memory usage when created 52477.00 Mb1:S 20 Nov 2023 11:20:33.582 * Done loading RDB, keys loaded: 136197566, keys expired: 0.
1:S 20 Nov 2023 11:20:33.582 * MASTER <-> REPLICA sync: Finished with success
1:S 20 Nov 2023 11:20:33.582 * Creating AOF incr file temp-appendonly.aof.incr on background rewrite
1:S 20 Nov 2023 11:20:34.166 * Background append only file rewriting started by pid 579579:C 20 Nov 2023 11:27:04.566 * Successfully created the temporary AOF base file temp-rewriteaof-bg-579.aof579:C 20 Nov 2023 11:27:05.051 * Fork CoW for AOF rewrite: current 2 MB, peak 2 MB, average 2 MB
1:S 20 Nov 2023 11:27:05.753 * Background AOF rewrite terminated with success1:S 20 Nov 2023 11:27:05.753 * Successfully renamed the temporary AOF base file temp-rewriteaof-bg-579.aof into appendonly.aof.2.base.rdb
1:S 20 Nov 2023 11:27:05.753 * Successfully renamed the temporary AOF incr file temp-appendonly.aof.incr into appendonly.aof.2.incr.aof1:S 20 Nov 2023 11:27:05.753 * Removing the history file appendonly.aof.1.incr.aof in the background
1:S 20 Nov 2023 11:27:05.754 * Removing the history file appendonly.aof.1.base.rdb in the background
1:S 20 Nov 2023 11:27:05.754 * Background AOF rewrite finished successfully

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/158628.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大华智能物联综合管理平台readpic接口任意文件读取漏洞复现 [附POC]

文章目录 大华智能物联综合管理平台readpic接口任意文件读取漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 大华智能物联综合管理平台readpic接口任意文件读取漏洞复现 [附POC] 0x01 前言 免责…

(论文阅读58-66)视频描述

58.文献阅读笔记&#xff08;LRCNs&#xff09; 简介 题目 Long-term Recurrent Convolutional Networks for Visual Recognition and Description 作者 Jeff Donahue, Lisa Anne Hendricks, Marcus Rohrbach, Subhashini Venugopalan, Sergio Guadarrama, Kate Saenko, T…

【2023C卷最新题目】20天拿下华为OD笔试之【哈希表】2023C-掌握单词个数-全网注释最详细分类最全的华为OD真题题解

文章目录 题目描述与示例题目描述输入描述输入描述 示例一输入输出说明 示例二输入输出说明 解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 有一个字符串数组 words 和一个字符串 chars 。 假如可以用 chars 中的字…

AIGC 点亮创作之旅,「重内容」行业也能轻装出发

毋庸置疑&#xff0c;AIGC 的普及成为了内容产业的一束光。 不仅策划们可以从信息挖掘、素材调用、修改编辑等基础文案工作中解放出来&#xff0c;美术也成为 AIGC 的应用强项&#xff0c;基本的加文字、换背景、改尺寸、延展素材等&#xff0c;都能快速解决。 内容创作者们也因…

leetcode:1773. 统计匹配检索规则的物品数量(python3解法)

难度&#xff1a;简单 给你一个数组 items &#xff0c;其中 items[i] [typei, colori, namei] &#xff0c;描述第 i 件物品的类型、颜色以及名称。 另给你一条由两个字符串 ruleKey 和 ruleValue 表示的检索规则。 如果第 i 件物品能满足下述条件之一&#xff0c;则认为该物…

使用内网穿透工具实现远程访问本地部署的Odoo企业管理系统

文章目录 前言1. 下载安装Odoo&#xff1a;2. 实现公网访问Odoo本地系统&#xff1a;3. 固定域名访问Odoo本地系统 前言 Odoo是全球流行的开源企业管理套件&#xff0c;是一个一站式全功能ERP及电商平台。 开源性质&#xff1a;Odoo是一个开源的ERP软件&#xff0c;这意味着企…

阿里云学生认证可领300元无门槛代金券(高效计划)

阿里云高校计划学生和教师均可参与&#xff0c;完成学生认证和教师验证后学生可以免费领取300元无门槛代金券和3折优惠折扣&#xff0c;适用于云服务器等全量公共云产品&#xff0c;订单原价金额封顶5000元/年&#xff0c;阿里云百科aliyunbaike.com分享阿里云高校计划入口及学…

下载安装升讯威在线客服系统时提示风险的解决办法

客服系统的服务端程序、客服端程序、配套的配置工具涉及磁盘文件读写、端口监听&#xff0c;特别是经过混淆加密后&#xff0c;可能被部分浏览器或部分杀毒软件提示风险。请忽略并放心使用&#xff0c;如果开发软件是为了植入木马&#xff0c;这个代价可太大了&#xff0c;不如…

危险了:蓝牙协议爆严重安全漏洞!

导读据外媒报道&#xff0c;美国的物联网安全研究公司Armis在蓝牙协议中发现了8个零日漏洞&#xff0c;而这些漏洞将会影响全球超过53亿的设备&#xff0c;包括Android、iOS、Windows、Linux系统设备以及使用短距离无线通信技术的物联网设备。 Armis的研究人员利用这些漏洞构建…

360反馈可以改变行为吗?

许多组织将 360反馈作为其绩效或人员发展议程的一部分&#xff0c;其最终目标是改变个人或团体的行为。但 360 度反馈能有效实现这一目标吗&#xff1f;有哪些证据表明 360 度反馈可以真正改变工作场所的行为和技能&#xff1f;当你谈论 360 度反馈时&#xff0c;”有效 “意味…

二进制插桩:静态插桩和动态intel pin插桩

目前有两类插桩平台&#xff1a;静态插桩&#xff08;SBI&#xff09;和动态插桩&#xff08;DBI&#xff09; SBI使用二进制重写方法永久修改磁盘上的二进制文件&#xff1b;DBI不会修改磁盘上的二进制程序&#xff0c;而是监视二进制程序的执行状态&#xff0c;并在其运行时…

C语言杨辉三角(ZZULIOJ1130:杨辉三角)

题目描述 还记得中学时候学过的杨辉三角吗&#xff1f;具体的定义这里不再描述&#xff0c;你可以参考以下的图形&#xff1a;1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 输入&#xff1a;输入只包含一个正整数n&#xff08;1 < n < 30&#xff09;&#xff0c;表示将…

python:关于函数内 * 和 / 是什么意思?

总结&#xff1a;如果你希望调用者使用函数时一定不能使用关键字传参&#xff0c;要求它使用位置进行传参&#xff0c;那么就可以把这些参数放在 / 的前面即可&#xff1b;如果你希望调用者使用函数时一定要使用某些参数&#xff0c;且必须是关键字传参时&#xff0c;那么就可以…

基于PHP的动漫周边购物系统

有需要请加文章底部Q哦 可远程调试 基于PHP的动漫周边购物系统 一 介绍 此动漫周边购物系统系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。用户可注册登录&#xff0c;购物下单&#xff0c;评论等。管理员登录后台可对动漫周边商品&#xff0c;用户…

跨越行业边界,CodeMeter护航AI领域安全与合规

在人工智能&#xff08;AI&#xff09;技术如ChatGPT的推动下&#xff0c;工业视觉、医疗诊断和智能驾驶等领域正在经历重大变革。这些技术不仅扩大了应用范围&#xff0c;也带来了数据安全、软件授权保护和合规性等新挑战。 AI工业视觉正在推动制造和自动化的快速发展&#x…

腾讯云服务器99元一年,续费多少钱?

腾讯云服务器99元一年&#xff0c;续费多少钱&#xff1f;腾讯云服务器价格是88元一年起&#xff0c;不是99元&#xff0c;阿里云是99元一年&#xff0c;续费不涨价依旧是99元的价格续费。腾讯云88元服务器配置为2核2G3M带宽的轻量应用服务器&#xff0c;续费价格不是88元&…

如何提⾼webpack的打包速度?

要提高Webpack的打包速度,可以尝试以下几种方法: 1:使用最新版本的Webpack: 确保使用的是最新版本的Webpack,因为每个版本都会带来性能改进和优化。 2:优化Webpack的配置: 检查Webpack配置文件,确保使用了合适的配置选项。例如,使用production模式配置可以开启一些优…

matlab-实现-BP-神经网络

最近写论文用到了很多神经网络和优化算法&#xff0c;算是废了不少精力收集起来的&#xff0c;还是整理出来分享给大家&#xff0c;以免浪费了。 本篇以最简单的 BP神经网络开始吧 详细的实现步骤如下&#xff1a; 1.环境准备&#xff1a;清空环境变量、关闭开启的图窗、清空变…

【腾讯云云上实验室-向量数据库】腾讯云VectorDB:深度学习场景下的新一代数据存储方案

引言 ​  在深度学习领域的实践中&#xff0c;一般会涉及到向量化处理的数据&#xff0c;如图像、文本、音频等&#xff0c;这些数据的存储和检索对于许多深度学习任务至关重要。传统的关系型数据库和NoSQL数据库在存储和检索这类大规模向量数据时&#xff0c;通常不能满足高…

学习计划计划执行记录

11.21--写下学习目标 游戏行业通识学习&#xff1a; 求知鱼游戏学院的个人空间-求知鱼游戏学院个人主页-哔哩哔哩视频 (bilibili.com) (28 封私信 / 80 条消息) 游鲨游戏圈 - 知乎 (zhihu.com) 书籍学习&#xff1a; 软技能2&#xff1a;软件开发者职业生涯指南 面经学习…