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                  | -             |
相关推荐
PPPPickup43 分钟前
金证秋招笔试
java·开发语言
不正经学生1 小时前
C语言结构体:自定义数据类型,让变量打包出行
java·c语言·开发语言·数据结构·算法
ycjunhua1 小时前
Spring AI 2.0 GA:ToolCallingAdvisor 重构与 Java Agent 新范式
java·人工智能·spring
开源必胜1 小时前
Future的异常处理以及CompletableFuture传播链、异常处理
java
林森lsjs2 小时前
队列 FIFO 原理 & 手撕两种队列实现(链表 + 循环数组)—数据结构陆
java·开发语言·数据结构·队列
lisin-lee-cooper3 小时前
简单聊聊 OpenFeign 框架源码
java·微服务
Buke..3 小时前
【APP 逆向】哔哩哔哩 sign 参数逆向(下):OLLVM 混淆还原 sign 算法
java·javascript·爬虫·python·算法
linux-hzh3 小时前
百日算法修炼 · Day 15
java·算法
半生过往4 小时前
前端学 Java 课程笔记
java·前端·笔记
mmsx4 小时前
基于 Android 的校园信息管理系统源码
android·java·okhttp