大数据时代:Hadoop架构原理全揭秘
大数据时代Hadoop架构原理全揭秘关键词Hadoop、HDFS、MapReduce、YARN、分布式存储、分布式计算、大数据处理摘要在数据量爆炸的今天如何高效存储和处理海量数据Hadoop作为大数据领域的“基石级”工具用分布式技术破解了这一难题。本文将以“图书馆管理”“工厂流水线”等生活场景为比喻用小学生都能听懂的语言拆解Hadoop的三大核心组件HDFS存储、MapReduce计算、YARN调度结合代码示例和实战操作带你彻底理解Hadoop的底层逻辑揭开大数据处理的神秘面纱。背景介绍目的和范围当你刷短视频时平台需要分析你的点赞记录当你网购时系统要预测你可能想买的商品……这些都依赖“大数据处理”。但传统数据库像“小仓库”存不下几亿用户的行为数据也跑不动复杂的计算任务。Hadoop正是为解决这些问题而生的“分布式全家桶”。本文将聚焦Hadoop最核心的三大组件HDFS、MapReduce、YARN从原理到实战带你全面掌握其架构。预期读者对大数据感兴趣的零基础小白只需懂“文件存储”“程序运行”等基础概念想深入理解Hadoop底层逻辑的开发者需在项目中应用Hadoop的技术决策者文档结构概述本文将按“故事引入→核心概念→原理拆解→实战操作→应用场景”的逻辑展开用“图书馆爆仓”的故事引出Hadoop的诞生背景用“分布式书架”“流水线分工”等比喻解释HDFS、MapReduce、YARN结合代码和流程图拆解Hadoop的存储、计算、调度细节手把手教你搭建Hadoop环境运行经典WordCount任务最后总结Hadoop的应用场景和未来趋势。术语表HDFSHadoop Distributed File SystemHadoop的分布式文件系统负责海量数据存储类比“分布式书架”。MapReduceHadoop的分布式计算框架负责海量数据处理类比“流水线分工干活”。YARNYet Another Resource NegotiatorHadoop的资源管理系统负责调度计算任务类比“工厂经理分配工人和机器”。DataNodeHDFS中的存储节点实际存放数据块类比“书架”。NameNodeHDFS中的管理节点记录数据块位置类比“图书管理员”。核心概念与联系故事引入图书馆爆仓了假设你是一家超大型图书馆的管理员每天有100万本书入库。原本的“单个大书架”传统数据库早就塞满了而且读者想查“所有书名含‘大数据’的书”时你得一个书架一个书架翻效率低到离谱。这时候你想到三个办法拆书分架把每本书切成128页的“书块”分散存到1000个小书架分布式存储分工查书让100个图书助理同时查不同书架的“书块”最后把结果汇总分布式计算统一调度找一个“总管理员”分配每个助理该查哪个书架避免打架资源管理。这三个办法就是Hadoop的核心——HDFS拆书分架、MapReduce分工查书、YARN统一调度。核心概念解释像给小学生讲故事一样核心概念一HDFS——分布式书架HDFS就像一个“超级大图书馆”但它的书架不是集中的而是分散在1000台电脑节点上。每本书文件会被切成128MB大小的“书块”数据块每个书块复制3份副本机制存到不同的书架DataNode上。比如你有一本1000MB的《大数据入门》HDFS会把它切成8个128MB的块最后一个块可能小一点每个块存3份分散在不同的机器上。这样即使某台机器坏了比如书架被偷了其他机器上还有副本数据不会丢。关键特点适合存大文件不适合存几KB的小文件就像用大书架放一张纸浪费空间写数据时“一次写入多次读取”就像书出版后不能改内容只能重新印一本。核心概念二MapReduce——流水线分工干活MapReduce是Hadoop的“计算引擎”它把一个大任务拆成无数小任务让很多机器同时干最后汇总结果。它的名字来自两个步骤Map拆分把大任务拆成小任务每个小任务处理一部分数据比如统计“每一页的单词数量”Reduce汇总把所有小任务的结果合并得到最终答案比如把每一页的单词数加起来得到整本书的单词总数。比如要统计全图书馆所有书的“单词出现次数”Map阶段会让每个助理机器统计自己负责的“书块”里的单词数比如统计“大数据”出现了5次Reduce阶段会把所有助理的统计结果汇总比如全馆“大数据”一共出现了1000次。关键特点适合“离线批量计算”比如统计昨天的日志不适合“实时查询”比如立刻查某个单词用“分而治之”的思想把大问题拆成小问题并行解决。核心概念三YARN——工厂经理YARN是Hadoop的“大管家”负责给MapReduce或其他计算框架分配资源。想象一个工厂有100台机器资源不同的任务比如统计单词、分析用户行为都需要机器。YARN的工作就是记录每台机器的空闲状态CPU、内存还剩多少根据任务的需求需要多少机器、多长时间分配最合适的机器监控任务执行一旦某台机器罢工重新分配任务到其他机器。比如同时有两个任务任务A需要10台机器跑1小时任务B需要50台机器跑30分钟。YARN会先让任务B用50台机器等它跑完再让任务A用剩下的机器避免资源浪费。关键特点支持多计算框架不仅MapReduce还能跑Spark、Flink动态调整资源让机器“闲不下来”。核心概念之间的关系用小学生能理解的比喻HDFS、MapReduce、YARN就像“餐厅三兄弟”HDFS是仓库存食材数据保证食材不会坏副本机制需要时能快速取到MapReduce是厨师团队用仓库里的食材HDFS的数据做菜计算分工处理Map拆分、合作出锅Reduce汇总YARN是餐厅经理给厨师团队分配厨房和工具资源确保有的厨师切菜Map任务有的厨师炒菜Reduce任务不会因为抢锅打架。具体关系拆解HDFS与MapReduceMapReduce的“食材”数据必须从HDFS仓库取计算完的“菜”结果也存回HDFS仓库MapReduce与YARNMapReduce要找YARN借机器资源YARN说“可以这5台机器给你跑Map任务那3台跑Reduce任务”HDFS与YARNYARN知道每台机器的状态比如某台机器内存大会告诉HDFS“把数据块存在内存大的机器上计算时更快”。核心概念原理和架构的文本示意图Hadoop整体架构可概括为“存储计算调度”的三层结构用户程序 → YARN资源调度 → MapReduce计算框架 → HDFS存储系统 ↑ ↑ 分配机器 读取/写入数据块Mermaid 流程图Hadoop任务执行流程用户提交任务YARN资源管理器分配ApplicationMaster向YARN申请Map任务资源Map任务从HDFS读取数据块Map处理数据输出中间结果Shuffle阶段中间结果分发到Reduce节点Reduce任务汇总结果结果写入HDFSYARN释放资源核心算法原理 具体操作步骤HDFS如何实现分布式存储HDFS的核心是“主从架构”由1个NameNode主节点和多个DataNode从节点组成。1. 数据写入流程假设你要上传一个文件到HDFS步骤如下用“寄快递”比喻联系快递站NameNode你告诉NameNode“我要寄一个1000MB的文件”NameNode检查是否有足够的存储空间并规划“切成8个128MB的块每个块存3份分别存在机器A、B、C机器D、E、F……”。分块打包客户端切分你的电脑客户端把文件切成8个块每个块复制3份。送快递DataNode存储客户端把每个块的3份副本分别传给对应的DataNode机器A、B、C等DataNode收到后向NameNode报告“块1已存储”。确认收货NameNode记录NameNode记录每个块的位置比如块1在机器A、B、C下次查询时就能快速找到。2. 数据读取流程假设你要下载HDFS中的文件步骤如下用“查快递”比喻问快递站NameNode你告诉NameNode“我要下载文件X”NameNode查记录告诉你“文件X的块1在机器A、B、C块2在机器D、E、F……”。就近取件客户端选择客户端选择离自己最近的DataNode比如机器A下载块1再选机器D下载块2以此类推。合并文件客户端拼接客户端把所有块拼回完整的文件显示给你。关键算法副本放置策略机架感知HDFS为了保证数据安全和读取速度采用“机架感知”策略第一个副本存客户端所在机器如果是上传否则随机选一台第二个副本存另一个机架的机器避免整个机架断电导致丢失第三个副本存第二个副本所在机架的另一台机器同一机架内读取更快。比如机房有两个机架Rack1和Rack2第一个副本在Rack1的机器A第二个在Rack2的机器D第三个在Rack2的机器E。这样即使Rack1全挂了Rack2还有两个副本可用。MapReduce如何实现分布式计算MapReduce的核心是“分→洗→合”Map→Shuffle→Reduce以经典的“WordCount统计单词出现次数”任务为例1. Map阶段拆分统计假设输入是一段文本“Hello Hadoop Hello World”Map任务会把这段文本拆成单词每个单词标记为1次输入Hello Hadoop Hello World Map处理 (Hello, 1) (Hadoop, 1) (Hello, 1) (World, 1)2. Shuffle阶段洗牌分发Shuffle是MapReduce最复杂的步骤相当于“把相同单词的统计结果分到同一组”。比如所有“Hello”的1会被发到同一个Reduce节点Shuffle后 (Hello, [1, 1]) (Hadoop, [1]) (World, [1])3. Reduce阶段汇总结果Reduce节点对每组数据求和得到最终结果Reduce处理 (Hello, 2) (Hadoop, 1) (World, 1)代码示例Java实现WordCount// Map类继承Mapper重写map方法publicclassWordCountMapperextendsMapperLongWritable,Text,Text,IntWritable{privatefinalstaticIntWritableonenewIntWritable(1);privateTextwordnewText();publicvoidmap(LongWritablekey,Textvalue,Contextcontext)throwsIOException,InterruptedException{String[]wordsvalue.toString().split( );// 按空格拆分单词for(Stringword:words){this.word.set(word);context.write(this.word,one);// 输出单词1}}}// Reduce类继承Reducer重写reduce方法publicclassWordCountReducerextendsReducerText,IntWritable,Text,IntWritable{privateIntWritableresultnewIntWritable();publicvoidreduce(Textkey,IterableIntWritablevalues,Contextcontext)throwsIOException,InterruptedException{intsum0;for(IntWritableval:values){sumval.get();// 对同一单词的所有1求和}result.set(sum);context.write(key,result);// 输出单词总数}}// 主类配置作业并提交publicclassWordCount{publicstaticvoidmain(String[]args)throwsException{ConfigurationconfnewConfiguration();JobjobJob.getInstance(conf,word count);job.setJarByClass(WordCount.class);job.setMapperClass(WordCountMapper.class);job.setCombinerClass(WordCountReducer.class);// Combiner是本地小Reduce优化性能job.setReducerClass(WordCountReducer.class);job.setOutputKeyClass(Text.class);job.setOutputValueClass(IntWritable.class);FileInputFormat.addInputPath(job,newPath(args[0]));FileOutputFormat.setOutputPath(job,newPath(args[1]));System.exit(job.waitForCompletion(true)?0:1);}}YARN如何调度资源YARN的架构是“主从模式”由ResourceManager主节点和NodeManager从节点组成核心流程如下用户提交任务用户提交MapReduce作业比如WordCount。ResourceManager分配AMResourceManager选一台NodeManager启动ApplicationMasterAM任务的“小管家”。AM申请资源AM向ResourceManager申请Map/Reduce任务需要的资源比如5个Map容器、2个Reduce容器。NodeManager启动任务ResourceManager通知对应的NodeManager启动容器类似“分配机器”NodeManager启动Map/Reduce进程。监控与回收AM监控任务进度任务完成后通知ResourceManager释放资源。数学模型和公式 详细讲解 举例说明MapReduce的数学抽象MapReduce的核心可以用两个函数表示Map函数输入是键值对输出是多个键值对。公式Map: (K1, V1) → List(K2, V2)例子输入行号“Hello Hadoop”输出“Hello”,1、“Hadoop”,1。Reduce函数输入是键值列表输出是键值对。公式Reduce: (K2, List(V2)) → List(K3, V3)例子输入“Hello”, [1,1]输出“Hello”, 2。HDFS的副本一致性模型HDFS采用“弱一致性”模型即文件写入时只有“关闭”close后其他节点才能看到完整内容。这类似于“写日记”你写日记时写入中别人看不到你合上日记本close后别人才能看。公式表示对于文件F当客户端调用F.close()后所有后续读取操作都能看到F的完整内容。项目实战代码实际案例和详细解释说明开发环境搭建以伪分布式模式为例Hadoop有三种运行模式本地模式单节点、伪分布式模式单节点模拟分布式、完全分布式模式多节点。这里以伪分布式模式为例适合学习。步骤1安装JavaHadoop依赖Java# 安装OpenJDK 8sudoapt-getinstallopenjdk-8-jdk# 验证安装java -version# 输出应显示openjdk version 1.8.0_302步骤2下载Hadoop从Hadoop官网下载稳定版比如3.3.6wgethttps://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gztar-zxvf hadoop-3.3.6.tar.gzmvhadoop-3.3.6 /usr/local/hadoop步骤3配置Hadoop关键文件修改/usr/local/hadoop/etc/hadoop/core-site.xml设置HDFS的 namenode地址configurationpropertynamefs.defaultFS/namevaluehdfs://localhost:9000/value/property/configuration修改/usr/local/hadoop/etc/hadoop/hdfs-site.xml设置副本数伪分布式设为1configurationpropertynamedfs.replication/namevalue1/value/property/configuration步骤4启动HDFS和YARN# 初始化namenode首次启动需要/usr/local/hadoop/bin/hdfs namenode -format# 启动HDFS/usr/local/hadoop/sbin/start-dfs.sh# 启动YARN/usr/local/hadoop/sbin/start-yarn.sh# 查看进程应看到NameNode、DataNode、ResourceManager、NodeManagerjps源代码详细实现和代码解读以WordCount任务为例假设你已编写好Java代码见前文并打包为wordcount.jar。步骤1上传输入文件到HDFS# 在本地创建输入文件input.txt内容为Hello Hadoop Hello WorldechoHello Hadoop Hello Worldinput.txt# 上传到HDFS的/user/hadoop/input目录/usr/local/hadoop/bin/hdfs dfs -mkdir -p /user/hadoop/input /usr/local/hadoop/bin/hdfs dfs -put input.txt /user/hadoop/input步骤2运行WordCount任务/usr/local/hadoop/bin/hadoop jar wordcount.jar WordCount /user/hadoop/input /user/hadoop/output步骤3查看输出结果/usr/local/hadoop/bin/hdfs dfs -cat /user/hadoop/output/part-r-00000# 输出应显示# Hadoop 1# Hello 2# World 1代码解读与分析Mapper类负责拆分单词并标记次数每个单词对应1次Reducer类负责对同一单词的所有1求和主类配置作业的输入输出路径、指定Mapper和Reducer类Combiner可选的“本地Reducer”在Map节点先做一次小汇总减少网络传输的数据量比如Map节点统计完“Hello”出现2次再传给Reduce节点而不是传两个1。实际应用场景Hadoop的分布式特性使其在以下场景中表现优异1. 日志分析互联网公司每天产生TB级别的用户访问日志比如淘宝的点击日志、抖音的播放日志。Hadoop可以快速统计“最受欢迎的商品”“用户活跃时间段”等帮助优化产品。2. 数据仓库企业需要存储多年的历史数据比如银行的交易记录HDFS的低成本、高扩展性适合作为“数据仓库”的存储层配合HiveHadoop的SQL引擎实现类SQL查询。3. 推荐系统电商平台的“猜你喜欢”功能需要分析用户的购买、浏览记录。Hadoop的MapReduce可以计算“用户A和用户B的购买相似度”进而推荐相似商品。4. 生物信息学基因测序会产生PB级别的数据比如人类基因组数据Hadoop的分布式计算可以加速基因序列比对、突变检测等任务。工具和资源推荐学习工具Hadoop官网文档Hadoop Documentation最权威的参考资料Hue可视化工具可通过Web界面管理HDFS文件、提交MapReduce任务Cloudera Manager企业级工具用于集群监控和运维。推荐书籍《Hadoop权威指南》O’Reilly从原理到实战覆盖Hadoop生态的经典教材《大数据技术原理与应用》林子雨适合国内读者结合案例讲解。社区与论坛Stack Overflow搜索Hadoop相关问题的解决方案CSDN/知乎关注“大数据”专栏获取最新技术动态。未来发展趋势与挑战趋势1与云原生结合传统Hadoop集群需要企业自己采购服务器成本高且维护复杂。未来Hadoop会更多运行在云平台如AWS EMR、阿里云E-MapReduce通过容器化Docker/Kubernetes实现弹性扩缩容。趋势2实时计算补充MapReduce适合“离线计算”比如统计昨天的数据但无法处理“实时需求”比如直播时的实时弹幕统计。Hadoop生态正与Spark Streaming、Flink等实时计算框架结合形成“离线实时”的混合计算体系。挑战1小文件问题HDFS对小文件比如几KB的文件存储效率低每个文件需要NameNode记录元数据占用内存。未来需要优化小文件合并方案比如使用SequenceFile。挑战2资源利用率YARN的资源调度算法如FIFO、容量调度器在复杂任务场景下可能导致资源浪费。未来需要更智能的调度策略比如基于AI预测任务资源需求。总结学到了什么核心概念回顾HDFS分布式存储系统用“分块副本”解决海量数据存储问题MapReduce分布式计算框架用“Map拆分Reduce汇总”解决海量数据处理问题YARN资源管理系统负责调度计算任务的机器资源。概念关系回顾HDFS是“仓库”存数据MapReduce是“工人”用数据干活YARN是“经理”给工人分配工具和场地。三者协作共同解决大数据的存储与计算难题。思考题动动小脑筋如果HDFS的块大小设置为32MB默认128MB会有什么问题提示NameNode内存、网络传输效率你能设计一个MapReduce任务统计“某电商平台每个用户的消费总金额”吗输入是用户ID和消费金额的日志如“user1,100”“user1,200”“user2,150”附录常见问题与解答QHDFS为什么不支持文件随机修改AHDFS设计时优先考虑“一次写入多次读取”的场景比如日志文件随机修改会增加复杂度需要同步多个副本。如果需要支持随机修改可使用HBaseHadoop的列式数据库。QMapReduce的Shuffle为什么慢AShuffle需要将Map的输出通过网络传输到Reduce节点涉及排序、分区、拷贝等操作。优化方法包括减少Map输出数据量用Combiner、调整分区数、使用压缩如Snappy压缩。QYARN如何处理任务失败ANodeManager会监控任务进程若任务崩溃比如机器宕机会向ResourceManager报告。ResourceManager会让AM重新申请资源在其他节点重启任务。扩展阅读 参考资料Apache Hadoop官方文档https://hadoop.apache.org/《Hadoop权威指南第4版》Tom White 著林子雨《大数据技术原理与应用》https://dblab.xmu.edu.cn/post/bigdata-book/

相关新闻

AI原生应用如何改变事实核查行业?深度剖析

AI原生应用如何改变事实核查行业?深度剖析

AI原生应用如何改变事实核查行业?深度剖析 关键词:AI原生应用、事实核查、大模型、多模态分析、知识图谱 摘要:在信息爆炸的今天,虚假信息以“秒级速度”传播,传统人工事实核查面临效率低、覆盖窄、成本高的困境。本文将从“AI原生应用”的核心特征出发,结合自然语言处理…

2026/7/2 22:02:00 阅读更多 →
从入门到精通:大数据环境下的数据脱敏实战指南

从入门到精通:大数据环境下的数据脱敏实战指南

从入门到精通:大数据环境下的数据脱敏实战指南 关键词:数据脱敏、隐私保护、敏感数据识别、脱敏算法、合规性、大数据处理、动态脱敏 摘要:在大数据时代,用户隐私泄露事件频发,企业面临《个人信息保护法》《GDPR》等严格法规约束。本文从“为什么需要数据脱敏”出发,用“…

2026/7/5 6:49:04 阅读更多 →
PHP技术在毕业设计中的核心难点与重点总结(附避坑指南)

PHP技术在毕业设计中的核心难点与重点总结(附避坑指南)

在计算机专业毕业设计中,PHP凭借入门快、生态完善、部署简单等特点,成为Web类毕设的首选技术栈,但真正做到功能完整、代码规范、可答辩、可运行,依然存在大量容易踩坑的重难点。本文结合历年毕设项目实战经验,梳理PHP毕…

2026/7/4 3:11:07 阅读更多 →

最新新闻

ConvNeXt 的 torchvision 版本 模型结构的代码实现

ConvNeXt 的 torchvision 版本 模型结构的代码实现

ConvNeXt 的 torchvision 版本 模型结构的代码实现 flyfish # flyfish convnext_tiny.py from collections.abc import Sequence from functools import partial from typing import Any, Callable, Optionalimport torch from torch import nn, Tensor from torch.nn import …

2026/7/5 14:28:21 阅读更多 →
一站式解决Windows C++运行时库依赖:VisualCppRedist AIO深度解析

一站式解决Windows C++运行时库依赖:VisualCppRedist AIO深度解析

一站式解决Windows C运行时库依赖:VisualCppRedist AIO深度解析 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾因"缺少msvcr120.dll&q…

2026/7/5 14:28:21 阅读更多 →
只看 inline 关键字,如何准确判别代码属于 C 还是 C++ 语义?

只看 inline 关键字,如何准确判别代码属于 C 还是 C++ 语义?

一、 源码中 inline 关键字的排查 对项目仓库中所有 .c / .h / .cpp / .hpp 文件中的 inline 关键字进行了全面的审计与排查, 1、 核心结论 结论:确认代码库中所有的 inline 均属于标准 C 的 inline 关键字语义,未发现异常或误用的情况。统计…

2026/7/5 14:26:20 阅读更多 →
告别手动对齐!用UvSquares插件3分钟搞定Blender UV网格重塑

告别手动对齐!用UvSquares插件3分钟搞定Blender UV网格重塑

告别手动对齐!用UvSquares插件3分钟搞定Blender UV网格重塑 【免费下载链接】UvSquares Blender addon for reshaping UV quad selection into a grid. 项目地址: https://gitcode.com/gh_mirrors/uv/UvSquares 你是否曾经在Blender的UV编辑器中花费数小时手…

2026/7/5 14:24:20 阅读更多 →
MySQL 8.4.10安装(二进制)

MySQL 8.4.10安装(二进制)

下载地址MySQL :: Download MySQL Community Server 自己使用远程传输工具上传 可以将包传至家目录,也可以直接wget 创建用户组目录 mkdir -p /mysql/app [rootRockymysql ~]# cd /mysql/app/ [rootRockymysql app]# mv ~/mysql-8.4.10-linux-glibc2.28-x86_6…

2026/7/5 14:24:20 阅读更多 →
第45期 Google三年砸$1000亿建AI基建:Capex全景

第45期 Google三年砸$1000亿建AI基建:Capex全景

# 第45期 Google三年砸$1000亿建AI基建:Capex全景> 作者:小Q | 阿水助理小Q---2026年2月,Alphabet在Q4财报电话会上扔出一枚重磅炸弹:2026年资本支出预计达到$1750亿-$1850亿,较2025年的$914.5亿近乎翻倍。到了6月1…

2026/7/5 14:22:19 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻