Skip to content
This repository was archived by the owner on Mar 16, 2019. It is now read-only.

Commit 7c887ba

Browse files
authored
Update README.md
1 parent 53d813b commit 7c887ba

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -728,7 +728,9 @@ Here's a [sample app](https://github.com/wkh237/rn-firebase-storage-upload-sampl
728728

729729
**Reduce RCT Bridge and BASE64 Overheard**
730730

731-
React Native connects JS and Native context by passing JSON through React bridge, therefore there will be an overhead to convert data before they sent. When data is large, this will be quite a performance impact to your app, it's recommended to use file storage instead of BASE64 if possible. The following chart shows how much faster when loading data from storage than BASE64 encoded string on iphone 6.
731+
React Native connects JS and Native context by passing JSON around React Native bridge, and there will be an overhead to convert data before they sent to each side. When data is large, this will be quite a performance impact to your app, it's recommended to use file storage instead of BASE64 if possible.
732+
733+
There's a knowning issue when reading data via `fs.readStream`. the process seems blocking JS thread when file is large, it's because the default buffer size is quite small (4kb) which result in large amount of events triggered in JS thread, try to increase the buffer size (for example 100kb => 102400) to reduce the frequency. The following chart shows how much faster when loading data from storage than BASE64 encoded string on iphone 6.
732734

733735
<img src="img/performance_1.png" style="width : 100%"/>
734736

0 commit comments

Comments
 (0)