bsdiff| google-diff-match-patch | metro-bundle 文件差异分析工具性能比对

复制代码
## 项目目的

源于在做 React Native 包拆分的需求时,比较 bsdiff 和 google-diff-match-patch 在生成差量文件上的性能差异。

- bsdiff (http://www.daemonology.net/bsdiff/)
- google-diff-match-patch (https://github.com/bystep15/google-diff-match-patch)
- metro-bundle(https://facebook.github.io/metro/)

## 实验数据

- Hello World 工程中的 jsbundle 对比

| 工具名称                    | bsdiff        | google-diff-match-patch | metro-bundle  |
| --------------------------- | ------------- | ----------------------- | ------------- |
| Common 包                   | 764,797 bytes | 764,797 bytes           | 764,797 bytes |
| HelloWorld 完整包           | 767,338 bytes | 767,338 bytes           | 767,338 bytes |
| HelloWorld 业务补丁 (patch) | 1,324 bytes   | 42,891 bytes            | 2,783 bytes   |
| 拆分时间 (diff time)        | 1,042 ms      | 2,410 ms                | -             |
| 合并时间 (patch time)       | 32 ms         | 258 ms                  | -             |
相关推荐
wuminyu3 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++
callJJ4 小时前
Spring Data Redis 两种编程模型详解:同步 vs 响应式
java·spring boot·redis·python·spring
wbs_scy5 小时前
Linux线程同步与互斥(三):线程同步深度解析之POSIX 信号量与环形队列生产者消费者模型,从原理到源码彻底吃透
java·开发语言
jinanwuhuaguo7 小时前
(第三十三篇)五月的文明奠基:OpenClaw 2026.5.2版本的文明级解读
android·java·开发语言·人工智能·github·拓扑学·openclaw
xmjd msup7 小时前
spring security 超详细使用教程(接入springboot、前后端分离)
java·spring boot·spring
952368 小时前
SpringBoot统一功能处理
java·spring boot·后端
Lyyaoo.8 小时前
优惠券秒杀业务分析
java·开发语言
消失的旧时光-19438 小时前
统一并发模型:线程、Reactor、协程本质是一件事(从线程到协程 · 第6篇·终章)
java·python·算法
勿忘初心12218 小时前
Java 国密 SM4 加密工具类实战(Hutool + BouncyCastle)|企业级数据加密 + 兼容 JDK8
java·数据安全·数据加密·后端开发·企业级开发·国密 sm4
庞轩px8 小时前
第8篇:原子类与CAS底层原理——无锁并发的实现
java·cas·乐观锁·aba·无锁编程·自旋