## 项目目的
源于在做 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 | - |
bsdiff| google-diff-match-patch | metro-bundle 文件差异分析工具性能比对
瓦哥架构实战2024-01-17 10:01
相关推荐
Mark_ZP31 分钟前
【锁1】Synchronized vs ReentrantLock区别立心者01 小时前
SpringBoot中使用TOTP实现MFA(多因素认证)枕星而眠1 小时前
C++ STL Map容器完全指南:从有序红黑树到无序哈希表bbq粉刷匠2 小时前
HashMap 底层原理深度拆解(二):putVal 完整链路解析(懒加载 · 链表遍历 · 尾插法)Sam_Deep_Thinking3 小时前
一个靠谱的C端网关服务应该包含什么内容杨运交3 小时前
[055][调度模块]Spring动态任务调度框架的设计与实现白狐_7983 小时前
408 数据结构算法题 01:线性表暴力求解保分指南流云鹤3 小时前
03Java学习day(3)tqs_123453 小时前
Agent智能体+Skill插件引擎+Milvus混合检索 技术沉淀严同学正在努力4 小时前
从备份到恢复:我用 30 分钟恢复了误删的核心业务表