Submit Search
Upload
モダンブラウザストレージ
•
0 likes
•
600 views
Kazuyuki Mori
Follow
HTML5で使われるストレージの良いところと悪いところ 使い分け方の紹介
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 24
Download now
Download to read offline
Recommended
Nodejs
Nodejs
和樹 川端
WordPressのサーバーの選び方
WordPressのサーバーの選び方
Endoh Shingo
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
Kiyoshi Sawada
Bitcoin testnet
Bitcoin testnet
Yuichiro Shibata
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
Kiyoshi Sawada
Web 10
Web 10
XMLProJ2014
仮想通貨テストベッドネットワークの構築
仮想通貨テストベッドネットワークの構築
Yuichiro Shibata
membase
membase
Yohei Sasaki
Recommended
Nodejs
Nodejs
和樹 川端
WordPressのサーバーの選び方
WordPressのサーバーの選び方
Endoh Shingo
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
Kiyoshi Sawada
Bitcoin testnet
Bitcoin testnet
Yuichiro Shibata
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
Kiyoshi Sawada
Web 10
Web 10
XMLProJ2014
仮想通貨テストベッドネットワークの構築
仮想通貨テストベッドネットワークの構築
Yuichiro Shibata
membase
membase
Yohei Sasaki
Postgresqlのワーキングセットが大きくなる現象について
Postgresqlのワーキングセットが大きくなる現象について
拓也 岸本
WordPress基礎講座1 CMSの概要
WordPress基礎講座1 CMSの概要
Akinori Kawamitsu
WebSocketでリアルタイム通信 (第13回学生LT資料)
WebSocketでリアルタイム通信 (第13回学生LT資料)
stmkza
MySQL-Docker
MySQL-Docker
MulticolorWorld
はじめてのクラウドサーバー AWSとGCEを使い比べてみた
はじめてのクラウドサーバー AWSとGCEを使い比べてみた
Eigoro Yamamura
Voltdb - wikipedia
Voltdb - wikipedia
Hiroshi Ono
私たちは何を Web っぽいと感じているのか
私たちは何を Web っぽいと感じているのか
Kenta Yamamoto
BtoCでバインド変数
BtoCでバインド変数
Yoshito Ueki
20110622 haruyama webso]cket
20110622 haruyama webso]cket
Makoto Haruyama
ラベレコ 出荷管理
ラベレコ 出荷管理
Takashi Noboru
Enterprise Manager 3.0
Enterprise Manager 3.0
Yuji Fujita
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
sakaik
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
Seiichiro Ishida
Indexed DBについて(書きかけ)
Indexed DBについて(書きかけ)
iPride Co., Ltd.
商用VPSのここだけの話
商用VPSのここだけの話
joeswebhosting
後期第二回ネットワークチーム講座資料
後期第二回ネットワークチーム講座資料
densan_teacher
10回目nodejs
10回目nodejs
Takuya Shishido
IT管理者と新しいIE
IT管理者と新しいIE
彰 村地
仮想環境によるLinux
仮想環境によるLinux
Shigeharu Matsumoto
Movable typeseminar 20120925
Movable typeseminar 20120925
Six Apart
Windows azureを知ろう ロール&ストレージ編
Windows azureを知ろう ロール&ストレージ編
Chiho Otonashi
Moot2013 moca ver0.3
Moot2013 moca ver0.3
科 黄
More Related Content
What's hot
Postgresqlのワーキングセットが大きくなる現象について
Postgresqlのワーキングセットが大きくなる現象について
拓也 岸本
WordPress基礎講座1 CMSの概要
WordPress基礎講座1 CMSの概要
Akinori Kawamitsu
WebSocketでリアルタイム通信 (第13回学生LT資料)
WebSocketでリアルタイム通信 (第13回学生LT資料)
stmkza
MySQL-Docker
MySQL-Docker
MulticolorWorld
はじめてのクラウドサーバー AWSとGCEを使い比べてみた
はじめてのクラウドサーバー AWSとGCEを使い比べてみた
Eigoro Yamamura
Voltdb - wikipedia
Voltdb - wikipedia
Hiroshi Ono
私たちは何を Web っぽいと感じているのか
私たちは何を Web っぽいと感じているのか
Kenta Yamamoto
BtoCでバインド変数
BtoCでバインド変数
Yoshito Ueki
20110622 haruyama webso]cket
20110622 haruyama webso]cket
Makoto Haruyama
ラベレコ 出荷管理
ラベレコ 出荷管理
Takashi Noboru
Enterprise Manager 3.0
Enterprise Manager 3.0
Yuji Fujita
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
sakaik
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
Seiichiro Ishida
Indexed DBについて(書きかけ)
Indexed DBについて(書きかけ)
iPride Co., Ltd.
商用VPSのここだけの話
商用VPSのここだけの話
joeswebhosting
後期第二回ネットワークチーム講座資料
後期第二回ネットワークチーム講座資料
densan_teacher
10回目nodejs
10回目nodejs
Takuya Shishido
IT管理者と新しいIE
IT管理者と新しいIE
彰 村地
仮想環境によるLinux
仮想環境によるLinux
Shigeharu Matsumoto
Movable typeseminar 20120925
Movable typeseminar 20120925
Six Apart
What's hot
(20)
Postgresqlのワーキングセットが大きくなる現象について
Postgresqlのワーキングセットが大きくなる現象について
WordPress基礎講座1 CMSの概要
WordPress基礎講座1 CMSの概要
WebSocketでリアルタイム通信 (第13回学生LT資料)
WebSocketでリアルタイム通信 (第13回学生LT資料)
MySQL-Docker
MySQL-Docker
はじめてのクラウドサーバー AWSとGCEを使い比べてみた
はじめてのクラウドサーバー AWSとGCEを使い比べてみた
Voltdb - wikipedia
Voltdb - wikipedia
私たちは何を Web っぽいと感じているのか
私たちは何を Web っぽいと感じているのか
BtoCでバインド変数
BtoCでバインド変数
20110622 haruyama webso]cket
20110622 haruyama webso]cket
ラベレコ 出荷管理
ラベレコ 出荷管理
Enterprise Manager 3.0
Enterprise Manager 3.0
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
Indexed DBについて(書きかけ)
Indexed DBについて(書きかけ)
商用VPSのここだけの話
商用VPSのここだけの話
後期第二回ネットワークチーム講座資料
後期第二回ネットワークチーム講座資料
10回目nodejs
10回目nodejs
IT管理者と新しいIE
IT管理者と新しいIE
仮想環境によるLinux
仮想環境によるLinux
Movable typeseminar 20120925
Movable typeseminar 20120925
Similar to モダンブラウザストレージ
Windows azureを知ろう ロール&ストレージ編
Windows azureを知ろう ロール&ストレージ編
Chiho Otonashi
Moot2013 moca ver0.3
Moot2013 moca ver0.3
科 黄
JBoss AS7 rev3
JBoss AS7 rev3
nekop
JBoss AS7 rev2
JBoss AS7 rev2
nekop
msal.js v2を触る
msal.js v2を触る
DevTakas
MySQL 初めてのチューニング
MySQL 初めてのチューニング
Craft works
20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料
Takahiro Iwase
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
Atsuo Yamasaki
Windows Azure 概要
Windows Azure 概要
fumios
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
Oonishi Takaaki
Amazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズ
SORACOM, INC
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果
Masayuki Ozawa
20120117 13 meister-elasti_cache-public
20120117 13 meister-elasti_cache-public
Amazon Web Services Japan
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Sunao Tomita
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
Yoshinori Matsunobu
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Microsoft
フロントエンド開発環境
フロントエンド開発環境
Masaki Kawaguchi
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
infinite_loop
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
Insight Technology, Inc.
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
GoAzure
Similar to モダンブラウザストレージ
(20)
Windows azureを知ろう ロール&ストレージ編
Windows azureを知ろう ロール&ストレージ編
Moot2013 moca ver0.3
Moot2013 moca ver0.3
JBoss AS7 rev3
JBoss AS7 rev3
JBoss AS7 rev2
JBoss AS7 rev2
msal.js v2を触る
msal.js v2を触る
MySQL 初めてのチューニング
MySQL 初めてのチューニング
20121205 nosql(okuyama fs)セミナー資料
20121205 nosql(okuyama fs)セミナー資料
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
Windows Azure 概要
Windows Azure 概要
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
Amazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズ
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果
20120117 13 meister-elasti_cache-public
20120117 13 meister-elasti_cache-public
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL Poolベストプラクティス
フロントエンド開発環境
フロントエンド開発環境
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
More from Kazuyuki Mori
BitMech 探索的 トレーディングシステム fin-py study #1
BitMech 探索的 トレーディングシステム fin-py study #1
Kazuyuki Mori
GoPiGo2で遊んでみた
GoPiGo2で遊んでみた
Kazuyuki Mori
Electron(旧atom shell)基礎+入門
Electron(旧atom shell)基礎+入門
Kazuyuki Mori
Dive into dockerネットワーク
Dive into dockerネットワーク
Kazuyuki Mori
Dockerハンズオン
Dockerハンズオン
Kazuyuki Mori
Docker基礎+docker0.9, 0.10概要
Docker基礎+docker0.9, 0.10概要
Kazuyuki Mori
More from Kazuyuki Mori
(6)
BitMech 探索的 トレーディングシステム fin-py study #1
BitMech 探索的 トレーディングシステム fin-py study #1
GoPiGo2で遊んでみた
GoPiGo2で遊んでみた
Electron(旧atom shell)基礎+入門
Electron(旧atom shell)基礎+入門
Dive into dockerネットワーク
Dive into dockerネットワーク
Dockerハンズオン
Dockerハンズオン
Docker基礎+docker0.9, 0.10概要
Docker基礎+docker0.9, 0.10概要
モダンブラウザストレージ
1.
@mainyaa モダンブラウザ ストレージ
2.
Who is me @mainyaa Kazuyuki
Mori Topgate, Inc. Front/Server/Network/Machine Learning Engineer
3.
Agenda 1. モダンブラウザストレージ 2. どれを使ったらいいの? 3.
Tips
4.
モダンブラウザストレージ 01localStorage, sessionStorage KVS with
Index and Transaction RDB for Web Old session manager Web Storage IndexedDB Web SQL Database Cookie 02 03 04
5.
Web Storage localStorage, sessionStorage 01
6.
■ Web Storageは、localStorageとsessionStorageという 2種類のKVSです ■
localStorage.foo = "bar"を使用して値を設定し、後で localStorage.fooとして値を取得できます。(ブラウザー を閉じて再度開いても) ■ sessionStorageも操作は同一ですが、ウィンドウが閉じ られるとクリアされます。 Web Storage
7.
Web Storage ・すべての最新ブラウザで サポートされる ・シンプルで同期的 ・他のタブ・ウィンドウとも同 期が取れる ・同期APIでパフォーマンスが悪 い ・サイズ制限が厳しい ・オブジェクトの格納にシリアライ ズが必要 Pros Cons
8.
Web SQL Database RDB for
Web 02
9.
■ Web SQL
Databaseは、一般的なSQLベースのリレー ショナルデータベース ■ フィールドにインデックスを付ける機能もあるため、Web Storageよりも検索がはるかに高速 ■ 非推奨。IEやFireFoxでサポートされておらず、段階的 に廃止予定 Web SQL Database
10.
Web SQL Database ・主要なモバイルブラウザ と、いくつかのデスクトップ ブラウザでサポート ・非同期APIであるため、 良好なパフォーマンス ・検索・トランザクション・厳 密なデータ構造 ・非推奨。IEやFireFoxでサポー トされておらず、段階的に廃止 予定 ・DBスキーマの定義やマイグ レーションなどでコードが複雑化 する Pros
Cons
11.
IndexedDB KVS with Index
and Transaction 03
12.
■ IndexedDBはWeb StorageとWeb
SQL Databaseの両方の良いところを 取り入れたもの ■ IndexedDBは、オブジェクトを格納できる「オブジェクトストア」のコレクショ ン ■ オブジェクト構造に制約はないため、テーブル定義がない ■ Web Storageに似ているが、非同期APIでパフォーマンスが非常に改善さ れている ■ インデックスを作成して、検索速度を向上させることができる IndexedDB
13.
IndexedDB ・モダンブラウザの本命の データベース ・非同期APIであるため、 良好なパフォーマンス ・インデックス・トランザク ション・シンプルなAPI ・まだすべてのブラウザがサポート されているわけではない ・Pollyfillの提供はある Pros Cons
14.
Cookie Old session manager 04
15.
■ 古くからあるHTTP通信のストレージ ■ 文字列しか格納できない ■
サイズ制限非常に厳しい(Safariでは1クッキーあたり 600MB) ■ 使い方を間違えると安全ではない ■ HTTPSにしてSecure属性とHttpOnly属性をつけよ う Cookie
16.
Cookie ・適切な属性をつけ ることでJavaScript からアクセスできな いストレージ ・サイズが小さく、スト レージ用途には向かな い Pros Cons
17.
どれをつかったらいいの?
18.
■ APIトークンの保存: ■ Cookie ■
パフォーマンスが気にならない: ■ WebStorage(localStorage) ■ SPAでローカルでアプリケーションを構築する: ■ IndexedDB どれをつかったらいいの?
19.
■ API Tokenの保存に最適なストレージ ■
HttpOnly属性 ■ JavaScriptからCookieにアクセス出来ないようにす る。XSSでAPI Tokenが取れないため安全 ■ Secure属性 ■ HTTPSのURLからHTTPのURLにCookieを送信しな い ■ https://developer.mozilla.org/ja/docs/Web/HTTP/Co okies Cookie
20.
■ シンプルなKVSストレージ ■ シンプルなWebアプリなら使っても良い ■
サイズ容量とパフォーマンスに注意 WebStorage(localStorage)
21.
■ 新しく始めるプロジェクトでは使うな。 Web SQL
Storage
22.
■ これからいろんなブラウザに広まっていくStorage ■ 良いパフォーマンス。シンプルなAPI ■
容量も多いし、Quota Management APIで、ユーザーに 同意を取ることで更に容量が使える ■ Polyfillもあるけど、どこまでサポートしているかはまだ 不明。 ■ 今後に期待 IndexedDB
23.
■ ストレージのサポートや、サイズリミットや、サイズオー バー時のエラー発生についてはHTML5 RocksのEiji Kitamuraさんの記事を見てください ■
https://www.html5rocks.com/ja/tutorials/offline/quota -research/ Tips: エラーハンドリング
24.
@mainyaa Thanks you!
Download now