Slide 1

Slide 1 text

IndexedDBのラッパー 「localForage」を使ってみる 2019年3月20日 シックス・アパート株式会社 ⾧内毅志

Slide 2

Slide 2 text

自己紹介 • ⾧内毅志(Takeshi Nick Osanai) • ディベロッパーリレーションマネージャー • Movable Type エバンジェリスト • AWS認定ソリューションアーキテクト • 趣味 ジョギング、野球観戦 英語の勉強 (TOEIC 875, 英検準1級) 家族と過ごすこと @Nick_smallworld

Slide 3

Slide 3 text

PWAのストレージに関するベストプラクティス https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/offline-for-pwa?hl=ja

Slide 4

Slide 4 text

IndexedDBとは • ブラウザで利用できるストレージ領域(DB) • Key-Value 形式でデータを保存 • ブラウザのデフォルトストレージになりつつある

Slide 5

Slide 5 text

localForageとは • WebStorage のような書き方でIndexedDBが使えるラッパー • Mozzila財団のメンバーがメンテナンスをしている

Slide 6

Slide 6 text

localForageのインストール(Web)

Slide 7

Slide 7 text

書き方の違い • WebStorage • localForage

Slide 8

Slide 8 text

localForage と WebStorage ? • WebStorage と localForage で パフォーマンスは異なる? • 試してみた

Slide 9

Slide 9 text

パフォーマンス計測 • for文で1000件のデータを作成 • sessionStorage、localForageで回す • 書き込み、読み出しの時間をそれぞれ計測

Slide 10

Slide 10 text

コード(一部)

Slide 11

Slide 11 text

•デモ

Slide 12

Slide 12 text

試した結果 • Chromeでは localForage+IndexedDBの方が全体的に早い • 特に書き込みは数十倍のレベルでWebStorageより高速 • localForage いけるじゃん! • ・・・という結論にしようと思ったのですが

Slide 13

Slide 13 text

あれ…? • FireFoxではsessionStorageのほうが早い…だと…? • ベンチマークのコードの問題かも • なにかわかったら今度発表します

Slide 14

Slide 14 text

ありがとうございました! • シックス・アパートの⾧内でした。 • MovableType.net もよろしく お願いします。