分布式存储选型与落地:Ceph、HDFS、GlusterFS、MinIO对比与避坑指南
简介一份关于主流分布式存储技术的综述文档适合大数据处理、云计算及后端存储方向的开发者与架构师阅读。内容以架构与演化两条主线展开系统梳理了谷歌文件系统、Hadoop分布式文件系统、Minio对象存储等经典方案的设计思想与适用场景。压缩包内仅含1个PDF文件整体约1.39MB目前已有403人学习。文档从文件、块、对象三种存储格式的本质差异切入比较了它们服务对象与管理方式的不同随后回顾分布式文件系统从网络文件系统、共享SAN文件系统、面向对象并行文件系统到云文件系统的四个发展阶段并分别解析GFS主从架构、HDFS多副本容错机制以及Minio基于RESTful API的S3兼容接口讨论各自在批量分析、低延迟访问和云存储场景中的优势与局限。读者可借此获得分布式存储领域的全景式认知为后续深入学习或技术选型提供参考。1. 从「单机不够用」说起分布式存储到底在解决什么分布式存储放在今天已经不算新概念但大多数团队第一次碰到它时并不是因为「想赶时髦」而是数据量到了单机存不下的临界点。几十 TB 日志、几亿张图片、业务库的冷数据磁盘加不进去备份要跨机器扩容要停机——这个时候才开始认真看 Ceph、HDFS、GlusterFS、MinIO 这些名词却不知道按什么维度去区分。我观察到的翻车案例里绝大多数不是技术本身站不住脚而是选型时看错了维度拿对象存储扛高频小文件拿分布式文件系统做块设备拿副本策略硬扛冷数据成本。这篇综述把主流的几种方案放在同一张坐标系里说清楚接口形态、写入路径、扩展方式和代价最后落到你能照着做的部署、验证与避坑路径。适合正在搭建数据底座、评估自建平台的从业者也适合集群已经跑起来、但说不清要不要换方案的运维同事。2. 先看共性的骨架CAP 取舍、数据分片和一致性协议2.1 一个文件怎么变成 N 份数据分片算法与一致性哈希所有分布式存储的第一步都是同一个动作把数据切成固定尺寸的小块再算出每个小块落在哪台机器上。不同方案只在「怎么切、怎么算、结果存在哪」上有差异。最直观的做法是对 key 取模比如file_hash % 节点数节点数量一变几乎所有数据的落盘位置都要重算迁移量高到没法接受。所以主流方案基本都走向一致性哈希把节点映射到一个逻辑环上数据 key 也落到环上顺时针找到的第一个节点就是归属节点。节点增删只影响相邻区间迁移量被控制在局部。但一致性哈希的两个毛病你要知道一是节点在环上分布不均匀会导致数据倾斜靠增加虚拟节点缓解经验值是每个物理节点挂 100200 个虚拟节点二是它仍然是「查表」逻辑客户端要知道环的完整状态才能计算归属。Ceph 没有走这条路它用 CRUSH 算法让客户端拿到集群拓扑图和归置规则后自己就能算出数据落在哪个 OSD不依赖任何中心元数据。这也是 Ceph 能扩展到上千节点的公开基础。理解这个差异很重要无中心计算的方案扩容时不需要重新分发「路由表」但拓扑变化时所有客户端必须同步到新 map。2.2 冗余除了副本还有纠删码两种写放大和一致性机制数据分散到多台机器后单台机器的故障是常态而不是异常。冗余手段只有两类副本和纠删码。副本方案把同一份数据写 N 份写放大就是 N 倍读性能好任何副本都能直接响应读请求纠删码把数据切成 k 份数据块再算出 m 份校验块任意丢失不超过 m 块都能恢复存储利用率是 k/(km)。以 42 为例6 个块里只有 4 个是有效数据但允许任意 2 块损坏比三副本的 33% 利用率高出一倍。代价藏在读路径和计算路径里。副本损坏直接读别的副本就行纠删码缺了一块后必须把其余 k 个块读出来做矩阵运算重建读放大明显。写入端也一样EC 写入要先做编码计算CPU 开销高于副本。所以生产环境里「热数据用副本、冷数据转 EC」是常见分层思路而不是整个集群一刀切。一致性协议决定了「写成功」这个返回意味着什么。多数派确认类似 Raft 的 quorum允许少数节点故障但不丢已确认数据全部确认则更慢但更稳最终一致性则对短窗口内的读旧数据有容忍度。对象存储默认的强一致与文件系统最终一致之间差的不是一个名词而是业务能不能接受「写入成功后立刻读到旧值」。2.3 选型先盯的这张对比表接口、一致性、时延与扩容方式方案对外接口一致性模型冗余方式数据定位扩容粒度典型瓶颈Ceph文件 / 块 / 对象强一致为主副本或 ECCRUSH 计算按 OSD 加盘网络与 OSD 数量HDFS文件强一致单 NameNode副本为主NameNode 元数据查询按 DataNode 加节点NameNode 内存与元数据吞吐GlusterFS文件偏最终一致副本或 EC文件名哈希按 Brick 加节点小文件与目录操作MinIO对象S3 兼容强一致读写一致EC 为主元数据 本地磁盘按节点加盘单集群规模上限这张表先看接口。块接口给虚拟机、文件系统挂在上面文件接口给 NFS、共享目录、大数据计算对象接口给应用直连、静态资源、备份归档。接口一旦定了方案基本就收敛了。再看时延预期如果业务要求亚毫秒级随机读写那上面四个方案都不合适该上分布式块存储加高性能 SSD甚至本地 NVMe 加副本如果几百毫秒内能返回四个都能谈。最后看运维投入无中心设计的方案往往部署简单、故障域直观但功能边界窄统一存储方案功能全代价是踩坑之后要有人持续维护。3. 四个主流方案的横向拆解读接口、写路径和选型边界3.1 对象存储代表MinIO 与自建 S3 网关的边界MinIO 是最容易被低估的方案因为部署太简单简单到让人觉得不靠谱。它把对象切成固定大小的分片每个分片按擦除码分布到多块磁盘上写入时至少需要过半数据块成功才返回。这种设计的优势是并发高、写入路径短、无中心节点启动一个进程就能对外提供对象接口劣势是单集群规模有实际边界数据量到 PB 级后元数据管理和跨机房容灾会变得费劲。它适合的对象很明确图片视频存储、备份归档、应用日志、数据湖的落地层。不适合的场景同样明确跑数据库、当共享文件系统、承载密集的小对象随机写。另一个容易混的是 Ceph 自带的 RGW它走 RADOS 对象存储网关适合已经上了 Ceph、又需要 S3 兼容接口的场景。如果你还没有 Ceph只是为了对象存储而来MinIO 的部署和运维成本低得多。3.2 HDFS为离线吞吐而生的文件系统HDFS 的设计目标从一开始就是「顺序读大文件」不是「随机读写小文件」。文件被切成 128MB 级的数据块分散在 DataNode 上NameNode 维护全部元数据。三副本的放置策略结合机架感知保证同一份数据跨机架分布坏一个机架也不丢数据。这个模型的计算亲和性极好MapReduce、Spark 这类引擎把计算任务调度到数据所在节点避免数据跨网络搬移。吞吐量非常漂亮单集群跑 PB 级数据是常态。边界同样清晰NameNode 是唯一元数据入口内存大小决定了文件数量上限海量小文件会让它先撑不住随机读性能差因为一次读取要跨节点聚合多个块在线更新能力弱文件写完后基本不再改动。所以 HDFS 适合离线数仓、海量日志分析这类「写一次、读多次、顺序读」的工作负载。如果你在它上面跑高并发随机读写数据库方向就反了。3.3 通用文件系统与块设备GlusterFS 与 Ceph 的战场差异GlusterFS 给出一套无中心元数据的文件系统文件名通过哈希直接定位到存储节点客户端自己计算路径没有单独的元数据服务器。这让它的部署和管理非常简单扩容就是加节点加 Brick文件分布靠哈希自动扩散。适合的场景是共享文件存储、媒体素材库、备份空间这类读多写少、大文件为主的负载。弱点在目录密集型操作list 目录、大量 rename、海量小文件创建都会触发跨节点的目录锁协调性能曲线很难看。Ceph 是另一种路线一个集群同时提供块、文件、对象三种接口。底层 RADOS 负责数据分布和复制CRUSH 决定数据落盘位置上层的 RBD、CephFS、RGW 分别对应三种访问方式。它的核心价值在于统一存储一套硬件同时给虚拟化平台供块设备、给应用供对象存储、给集群供文件系统。代价是运维复杂度明显高于前两者OSD 的数量和网络质量直接决定全集群性能。如果你只需要块存储跑虚拟机Ceph 是主流选择如果只需要共享文件目录GlusterFS 的轻量也许更现实。3.4 一套决策树三个问题确定你的方案我把选型压缩成三个问题。第一问你的应用通过什么接口访问数据要块设备选 Ceph RBD要文件目录选 GlusterFS 或 CephFS要 S3 风格对象选 MinIO 或 RGW要做离线批处理选 HDFS。第二问数据规模和增长曲线是什么100TB 以内任何方案都够用优先选运维简单的PB 级且要求多接口并存Ceph 的综合优势最大纯对象场景数据过 PB 后优先考虑单个对象集群拆分而不是单集群硬撑。第三问团队能承受多高的运维复杂度没有专职存储工程师就别碰 Ceph用 MinIO 或 GlusterFS 可以把踩坑面缩小一大半。4. 用最小集群跑通一个方案Ceph 部署、调参与故障演练4.1 三节点最小集群网络规划、部署顺序与一条 bootstrap 命令常见做法是用三台物理机或三个虚拟机各挂两块独立数据盘两块网卡分别做管理网和数据网。管理网跑监控与集群心跳数据网跑 OSD 之间的复制和回填流量。混用网络在压力上来后会互相拖累这是最先要避免的坑。# 1. 在管理节点拉起首个 monitor、manager 和编排器 cephadm bootstrap --mon-ip 10.0.1.11 --cluster-network 10.0.2.0/24--mon-ip指定管理网 IP--cluster-network单独指定数据网段。bootstrap 会生成初始集群、导入首个 monitor并在当前主机启动 manager 与 cephadm 编排器同时输出一个 dashboard 地址和登录凭据。执行完先看集群状态# 2. 确认集群 health 状态 ceph -s看到HEALTH_OK说明基础集群正常。如果显示HEALTH_WARN最常出现的是 mon 时钟偏移或网络 MTU 不一致先解决警告再继续加 OSD。# 3. 查看所有节点上可被识别的裸设备 ceph orch device ls # 4. 让编排器接管所有可用裸盘作为 OSD ceph orch apply osd --all-available-devicesdevice ls列出每台主机的磁盘和状态确认没有误选系统盘。apply osd会把可用裸盘全部创建为 OSD并用默认 CRUSH 规则分布。这里注意不要在生产环境直接开--all-available-devices建议先用ceph orch device ls核对盘符再用以下方式定点添加。# 5. 把指定盘单独添加为 OSD ceph orch daemon add osd $HOSTNAME:/dev/sdb4.2 让性能曲线符合预期pool 参数、CRUSH 规则和 pg 数量三节点跑起来后接下来是 pool 参数。先创建块存储池并显式指定应用类型# 1. 创建 128 个 pg 的块存储 pool ceph osd pool create volumes 128 replicated # 2. 绑定应用类型rbd 客户端才能正确使用 rbd pool init volumes ceph osd pool application set volumes rbdpg 数量决定数据分布粒度太少会分布不均太多会消耗 OSD 内存和 CPU。经验公式是(OSD 总数 * 100) / 副本数三节点六 OSD、三副本时大约 200取 128 起步压测后通过ceph osd pool autoscale-status观察是否需要调整。副本相关参数直接影响可用性# 3. 调整副本与最小可写副本 ceph osd pool set volumes size 3 ceph osd pool set volumes min_size 2size3意味着写三份min_size2表示即使一块盘故障客户端依然能写入。不要调成min_size1那一块盘坏掉就会丢整个 pool。网络参数也要确认。检查 OSD 是否全部走数据网# 4. 查看 OSD 的网络配置 ceph config get osd public_network ceph config get osd cluster_networkpublic_network 应该是管理网cluster_network 是数据网。如果两条配置是同一个网段回填和数据复制流量会和管理流量抢带宽性能压测时表现很怪这是常见坑。4.3 故障演练拔掉一块盘看数据怎么自愈集群没经历过故障演练等于没验证过。最小规模演练这样做# 1. 手动把 osd.3 标记为 out触发副本迁移 ceph osd out osd.3 # 2. 观察集群迁移状态 ceph -w标记 out 后Ceph 会把该 OSD 上的 pg 迁到其他 OSD 上重新生成三副本表现为backfill或recovery状态。这时候看两类指标recovery速率是否打满数据网带宽以及集群是否还能正常响应客户端写请求。全部 pg 回到activeclean后再把 OSD 拉回# 3. 恢复 osd.3 参与数据分布 ceph osd in osd.3回到 in 状态后因为osd.3加入导致 pg 重新分布会再触发一次回填。故意演练一次你才能直观理解「加盘也占带宽」这件事——扩容不是零成本新盘加入会把存量数据重新洗一遍牌带宽不足时还会拖慢在线业务。这个参数用于控制回填并发# 4. 限制回填并发避免拖垮在线业务 ceph config set osd osd_max_backfills 1osd_max_backfills1让每个 OSD 同时只处理一个回填任务配合 QoS 参数能给在线业务留出吞吐余量。5. 分布式存储落地避坑监控、性能和运维的真实边界5.1 小文件大量写入后性能掉了一个数量级现象业务接入后集群 IPOS 很高但吞吐和响应时延双双恶化磁盘没满监控里 OSD 的 CPU 却居高不下。原因小文件写入的每次请求都涉及一次上下文切换和元数据操作文件越小元数据开销占比越高尤其 HDFS 的 NameNode 和 GlusterFS 的目录锁会被最先压垮。解决把多个小文件合并成大对象再写入对象存储或改用消息队列削峰批量落盘实在要存小文件给存储单独建小文件池并调大pg_num分散热点。5.2 OSD 反复 flapping网络抖动比坏盘更麻烦现象ceph -s里 OSD 状态在 up 和 down 之间反复跳日志里大量heartbeat timeout。原因OSD 之间通过心跳检测彼此状态网络抖动或数据网拥塞会导致误判触发频繁的 peering 和回填。解决先把 OSD 拉起并观察网络用iperf3测数据网实际带宽确认是拥塞就限速回填、调整osd_max_backfills确认是设备故障就换网卡或交换机端口。等网络稳定再批量ceph osd in不要强行把所有 OSD 拉回 in那会放大回填风暴。5.3 纠删码产生的读放大让部分读场景很难受现象把某个池从三副本切成 EC 42 后存储空间省了但高频小读业务时延翻倍。原因EC 的读请求在数据块完整时其实不放大但一旦某个 chunk 所在磁盘故障或降级读路径要从 k 个块做矩阵重建网络和 CPU 开销立刻上来。解决不要把 EC 用在在线随机读负载上让 EC 池承接备份、归档、冷数据热数据保持副本。切换前先做读写混合压测别只测顺序写吞吐。5.4 fio 压测方式错了结果全是幻觉现象压测报告显示 IOPS 很高上线后业务却达不到一半怀疑存储是「黑匣子」。原因fio 参数写得太天真。常见的错误包括不开direct1导致页缓存干扰随机写用默认顺序调度器队列深度没设置单线程根本压不出真实并发能力。解决统一用下面这组参数做基准fio --namecluster_test --ioenginelibaio --direct1 \ --bs4k --rwrandrw --rwmixread70 \ --iodepth32 --numjobs8 --size8G \ --group_reporting --time_based --runtime120direct1绕过操作系统页缓存直接读写设备libaio是异步 I/O 引擎配合iodepth32才能让存储同时处理多个并发请求rwmixread70模拟 70% 读 30% 写的混合业务numjobs8模拟多进程并发。压测时盯两个指标slat提交延迟和clat完成延迟clat 大幅波动说明存储端在排队。5.5 磁盘故障预警一个坏盘拖慢整个集群现象单块盘写延迟突增集群整体时延跟着上涨OSD 状态却一直显示 up。原因机械盘遇到坏道后重试机制会让内核 I/O 长时间挂起OSD 在超时阈值内没响应心跳但进程还活着状态判定滞后。解决别等 OSD 自己 down部署前就把 SMART 监控接上重点盯Reallocated_Sector_Ct和Current_Pending_Sector其中任一指标持续增长立刻标记 out 并更换。另一个辅助手段是设置osd_op_threads和操作超时参数让慢盘问题能被更快识别而不是让集群陪它一起慢性死亡。6. 从单方案到多方案成本模型、分层存储和交付检查主流方案并不互相排斥更大的现实是它们会在同一套系统里分层共存。常见结构是热数据放在 SSD 副本池上跑在线业务归档数据转纠删码池降低成本跨机房容灾再走对象存储复制。分层存储的核心原则是「每一层只做自己擅长的事」不要让一个方案承担所有语义。成本模型要盯三个反直觉的数字。副本写放大三副本的存储利用率只有 33%EC 42 能到 67%但 EC 带来读放大和 CPU 开销所以热数据用副本、冷数据转 EC 的组合比单用任何一种都省钱。磁盘单盘成本机械盘按容量买很便宜但随机读性能差SSD 单 GB 贵但能把时延降一个数量级先测负载再定盘型。运维人力成本无中心方案部署快但功能窄统一存储方案功能全但排障时间长选型时把这个隐性成本算进去往往比硬件差价更能决定成败。交付前的检查清单我一般固定看这几项集群健康状态是否为HEALTH_OK压测结果是否符合业务需求故障演练是否执行过且回填期间业务可用性达标监控告警是否覆盖了 OSD down、网络丢包、磁盘 SMART 异常备份和恢复流程是否有过至少一次真实演练。最后这一条最容易忽略很多团队以为做到副本就安全实际上副本只能防硬件故障防不住误删和逻辑损坏。定期做恢复演练才能确定数据真的能救回来。我个人的教训是早期给一个小集群配了副本和监控就以为万事大吉直到一次扩容时连续故障两块盘才发现回填带宽没限制把在线业务拖到超时。从那以后每次交付都强制做一次故障演练演练结束才宣布上线。这个习惯救过我两次希望你也能用上。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

Matlab图像拼接实战:SIFT特征匹配+RANSAC单应估计+多频带融合

Matlab图像拼接实战:SIFT特征匹配+RANSAC单应估计+多频带融合

简介:本资源是一套基于Matlab实现的SIFT特征匹配与RANSAC鲁棒估计相结合的图像拼接与融合完整方案,面向计算机视觉初学者、图像处理课程学习者及科研入门人员,解决多视角图像自动对齐、宽视场全景图生成等典型问题。压缩包共20个文件&#xf…

2026/10/16 17:55:24 阅读更多 →
用Python爬虫打造自动化SEO巡检工具:从TDK提取到反爬避坑

用Python爬虫打造自动化SEO巡检工具:从TDK提取到反爬避坑

简介:面向网站优化人员与Python学习者的SEO数据采集与分析工具,以“SEO网络蜘蛛侠”命名,通过自动化爬虫帮助用户完成关键词挖掘、元信息检查、链接结构分析、内容质量与加载速度检测、死链排查等高频SEO任务。程序内置可执行版本&#xff0c…

2026/10/16 17:55:24 阅读更多 →
Python快速可视化SEG-Y地震数据:三步实现剖面绘制与批量抽检

Python快速可视化SEG-Y地震数据:三步实现剖面绘制与批量抽检

简介:这份资源面向地质勘探、地震预测与环境监测领域的技术人员及Qt开发者,提供一套基于Qt3.3框架的地震数据快速可视化实现方案,重点解决大规模地震记录的读取、处理与图形化展示问题。压缩包共77个文件,约2.07MB,以h…

2026/10/16 17:55:23 阅读更多 →

最新新闻

C#脚本编辑器实现:基于Roslyn的语法感知与安全执行

C#脚本编辑器实现:基于Roslyn的语法感知与安全执行

简介:本资源是一套基于C#实现的轻量级脚本编辑器完整源码,面向.NET开发者、自动化工具开发者及工业视觉软件二次开发人员,解决在自有应用中快速集成可编译、可调试脚本扩展能力的实际需求。压缩包共156个文件,含23个核心C#源文件&…

2026/10/16 18:34:14 阅读更多 →
烽火S5700三层交换机配置实战:登录、VLAN、路由与排错指南

烽火S5700三层交换机配置实战:登录、VLAN、路由与排错指南

简介:烽火通信官方发布的 S5700 系列三层千兆路由交换机操作手册(V1.0)是一份面向企业网、校园网及 ISP 场景的 CLI 配置指南,适用于工程技术人员、工程开通人员、设备维护人员和网络管理人员,可帮助读者系统掌握该系列…

2026/10/16 18:34:14 阅读更多 →
5 分钟用 SlackKit 开发你的第一个 Slack Bot:RTM 机器人完全教程

5 分钟用 SlackKit 开发你的第一个 Slack Bot:RTM 机器人完全教程

【免费下载链接】SlackKit Build Slack apps, in Swift 项目地址: https://gitcode.com/gh_mirrors/sl/SlackKit 点击查看 免费下载 SlackKit 是一个用 Swift 编写的开源工具包,让你几行代码就能构建 Slack 应用:通过 RTM(Real T…

2026/10/16 18:34:14 阅读更多 →
AI招聘工具如何重塑春招人才争夺战

AI招聘工具如何重塑春招人才争夺战

1. 春招战场为什么变成了“极速博弈”每年的春季招聘,本质上是一场掐着秒表进行的人才争夺战。企业端急着补缺口、抢项目节点,候选人端忙着海投、赶场、比offer,双方都被压缩在短短一两个月内完成大量匹配动作。以往那种“挂个职位慢慢等简历…

2026/10/16 18:34:14 阅读更多 →
测开准备 Day03:Python工程化与深度学习基础认知

测开准备 Day03:Python工程化与深度学习基础认知

提到“测开准备”,很多人第一反应是刷接口用例设计、背测试理论、把自动化工具点得飞起。但以我在测试开发岗位摸爬滚打几年的体感来说,真正决定你能不能从“会写脚本”跨越到“能搭框架、能定方案”的,首先是 Python 功底够不够工程化&#…

2026/10/16 18:34:14 阅读更多 →
DeepSeek-R1本地部署原理:RL训练解耦与ollama推理优化

DeepSeek-R1本地部署原理:RL训练解耦与ollama推理优化

简介:本资源是一份面向AI初学者与本地部署实践者的DeepSeek大模型技术详解PDF,聚焦大语言模型原理、本地化部署全流程及强化学习驱动的R1推理模型训练方法。内容覆盖本地部署动因(隐私保护、离线可用、零成本适配)、Transformer架…

2026/10/16 18:33:13 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →