Metro拆包工作原理

Posted xiangzhihong8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Metro拆包工作原理相关的知识,希望对你有一定的参考价值。

一、背景

触过RN的同学都知道,热更新作为RN最大的特点之一,可以让开发者随时上线新的迭代以及修复线上Bug。在上一篇文章我们聊了一下热更新平台搭建,今天来我们聊聊热更新中的拆包环节。

热更新和拆包都是大家聊得比较多的话题,通常一个聊得比较多的技术话题都会有一套成熟的技术方案,比如热更新平台就有 CodePush 这样的成熟方案,但拆包却没有一套大家都公认成熟的方案。不过,市面上支持拆包的方案有react-native-multibundler、携程的moles-packer 还有58同城的metro-code-split,由于前两种已经停止更新,所以不做特别的介绍。

众所周知,Facebook 开源的 Metro 打包工具,本身并没有拆包功能,它的主要功能是将 javascript 代码打包成一个 Bundle 文件,而且 Metro 也不支持第三方插件,所以社区也没有第三方拆包插件。

不过,我们在阅读 Metro 源码的时候,发现了一个可配置的函数

以上是关于Metro拆包工作原理的主要内容,如果未能解决你的问题,请参考以下文章

Java 粘包/半包 原理与拆包实战(史上最全)

C#下利用封包拆包原理解决Socket粘包半包问题(新手篇)

粘包和拆包

从dubbo处理视角看Netty处理网络传输原理 -- 粘包与拆包

不明白为啥拆包没有按预期工作

在 Metro 中使用 NHibernate