Dynamsoft JavaScript Barcode SDK性能解析


Dynamsoft JavaScript Barcode SDK是基於WebAssembly實現的。它的優勢在於可以直接運行在任何平臺的任何瀏覽器中。然而不同的瀏覽器,對WebAssembly的支持以及性能表現也是不同的。

不同瀏覽器的性能數據

影響WebAssembly的因素包括網絡連接,硬件配置,以及瀏覽器。

Android

在安卓設備上,瀏覽器推薦使用FirefoxFirefox的性能要優於Chrome

設備 瀏覽器 首次加載耗時(ms) 緩存加載耗時(ms) 條碼檢測平均耗時(ms)
HUAWEI Mate20 CPU: Hisilicon Kirin 980 Chrome 70 4,998 3,873 234
HUAWEI Mate20 CPU: Hisilicon Kirin 980 Firefox 63 1,617 319 267

iOS

iOS設備建議iPhone 7以上,瀏覽器使用Safari

設備 瀏覽器 首次加載耗時(ms) 緩存加載耗時(ms) 條碼檢測平均耗時(ms)
iPhone 7 Safari 11.4 6,936 5,647 485
iPhone X Safari 12.1 4,211 4,001 378

桌面

Windows, LinuxmacOS上運行主流瀏覽器,性能比較接近。

設備 瀏覽器 首次加載耗時(ms) 緩存加載耗時(ms) 條碼檢測平均耗時(ms)
Win10 CPU: i7-4790 Chrome Version 70 (64-bit) 546 485 253
Win10 CPU: i7-4790 Firefox Quantum 63 (64-bit) 220 122 219
Win10 CPU: i7-4790 Microsoft Edge 42 339 112 1,778
Ubuntu: 16.0.4 Firefox Quantum 63 (64-bit) 396 238 256
Mac: 10.13.6 Safari 12 4,540 4,455 213
Mac: 10.13.6 Firefox Quantum 63 (64-bit) 290 195 272
Mac: 10.13.6 Chrome 71 (64-bit) 975 878 292

爲什麼Firefox的表現會優於Chrome?

Firefox

Firefox支持把編譯之後的wasm模塊緩存到IndexedDB中。這樣通過緩存加載不需要再編譯。

首次加載

緩存加載

Chrome

Chrome只能把wasm文件緩存到IndexedDB中,通過緩存加載的時候需要耗費編譯的時間。

首次加載

緩存加載

原文鏈接

https://www.dynamsoft.com/blog/insights/best-practices-increasing-speed-dynamsoft-barcode-reader-javascript-edition/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章