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

这篇具有很好参考价值的文章主要介绍了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                  | -             |

文章来源地址https://www.toymoban.com/news/detail-797276.html

到了这里,关于bsdiff| google-diff-match-patch | metro-bundle 文件差异分析工具性能比对的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unidbg中Hook和Patch

    hook之前之后类似于xposed patch两种方式,直接修改hex,以及指令转化hex(keystone 将汇编指令转化为hex) hex to arm | arm to hex 推荐网站: https://armconverter.com/

    2024年02月13日
    浏览(22)
  • git使用patch进行补丁操作

    在软件开发中,代码协作和版本管理是至关重要的。Git 是一个流行的分布式版本控制系统,它提供了各种功能来简化团队合作和代码管理。但是如何给已有项目打补丁,如何在线上运行的项目做增量修改是运维以及开发者需要掌握的一个比较高级的git技术,本文将介绍如何使

    2024年02月04日
    浏览(38)
  • 虚拟dom及diff算法之 —— h函数和diff函数

    新虚拟dom和老虚拟dom进行diff算法(精细化比较),算出如何最小量更新,最后反映到真实dom上 diff是发生在虚拟dom上的 模板编译 虚拟dom如何产生 - 渲染函数(h函数) h函数产生虚拟节点(vnode) Dom节点: a href=\\\"https://www.baidu.com\\\"真实Dom/a 调用h函数: h(\\\'a\\\',{props:{href:\\\"https://www

    2024年02月06日
    浏览(31)
  • Git 打patch (打补丁)的使用

    patch 的使用 一般是diff ,apply ,format-patch,am 1 生成patch git diff test.patch  这个是打补丁(test.patch自己取的名字,这个命令可以看出没有指定修改的问题所以默认把所有修改的文件都打patch了,同时还需要注意,这里是本地修改的没有执行add缓存的) 如果想指定某个文件的修改打patch可以

    2024年01月25日
    浏览(36)
  • python的猴子补丁(Monkey Patching)

    Python是一种典型的动态脚本语言。它不仅具有 动态类型(dynamic type) ,而且它的 对象模型(object model) 也是动态的。Python的类是可变的(mutable),方法(methods)只是类的属性(attributes);这允许我们在 运行时(run time) 修改其行为。这被称为猴子补丁(Monkey Patching), 它指的是偷偷地更改

    2024年02月02日
    浏览(36)
  • 【git】代码patch包生成和合入

    git am会直接将patch的所有信息打上去,而且不用重新git add和git commit,author也是patch的author而不是打patch的人 常用命令 如有提示“patch does not apply”,表示patch冲突,手动解决完冲突后,继续合入 或者忽略 或者停止合入 git apply是将补丁文件应用到代码库中,但不会自动创建提

    2024年02月04日
    浏览(29)
  • Python中Mock和Patch的区别

    在测试并行开发(TPD)中,代码开发是第一位的。尽管如此,我们还是要写出开发的测试,并执行它们来验证代码的准确性(而不是直接运行代码或使用控制台)。 在Python中,我们有一个叫做单元测试的过程,里面有mock 和patch 函数。这篇文章将讨论这两个角色的用途和区别

    2024年02月10日
    浏览(23)
  • 论文阅读笔记3:Patch-NetVLAD

    题目: Patch-NetVLAD: Multi-Scale Fusion of Locally-Global Descriptorsfor Place Recognition 团队 :澳大利亚昆士兰理工大学,电气工程与机器人学院和QUT机器人中心 解决的问题:克服视点和外观变化的双重问题 创新点: 与现有局部关键点特征的固定空间邻域制度不同,我们的方法能够聚集和

    2024年02月16日
    浏览(23)
  • Git常用命令format-patch

    我们在日常的开发中,需要将自己的改动给到其他同事时,经常需要将改动打补丁 (patch) 后进行处理。 git format-patch 是一种帮助开发人员从其 git 提交创建补丁的命令。这个命令很有用,可以用于各种原因,如代 码审查、在分支之间共享代码更改以及向邮件列表提交补丁。对

    2024年02月16日
    浏览(27)
  • 记一次kernel patch(附开源贡献相关)

    看了zhihu上的一些科普,明白二次开发是常见现象,套壳、抄袭、自研都不是很科学的说法。中外大厂都会在AOSP、linux kernel、ffmpeg播放器、chromium等常见的祖先上进行自己的定制,发布自己的发行版。 龙蜥操作系统,来自阿里云,设计目的之一是接管centos留下的烂摊子,用于

    2024年02月14日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包