[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

Articleとtech jsonに関するbleu-bleutのブックマーク (3)

  • PythonのJSONパーサのメモリ使用量と処理時間を比較してみる | POSTD

    私は、多数の大容量のデータをあちこちに移動させなければならない(クライアント端末をHTTP APIに接続してデータを取得します)ような特殊な使用事例を扱っています。なぜだか ^(1) 、転送形式にはJSONが使われていました。ある時、その大容量のデータが、さらに巨大になったのです。数百メガバイトどころではありません。JSONのデコード処理を実行すると大量のRAMが使用されることが分かりました。たった240MBのJSONペイロードで4.4GBですよ。信じられません。 ^(2) 組み込みのJSONライブラリを使っていて、まず「もっと性能の良いJSONパーサがあるはずだ」と思いました。そんなわけで、計測を始めたのです。 さて、メモリ使用量の計測はやっかいです。 ps コマンドを使ったり、 /proc/<pid> を見たりすることはできますが、断片的なスナップショットが得られるだけで、実際の最大使

    PythonのJSONパーサのメモリ使用量と処理時間を比較してみる | POSTD
    bleu-bleut
    bleu-bleut 2016/02/05
    "わずかな文字列が恐ろしいほどの大きさの容量に拡大するjsonの重大な脆弱性"ってどういうこと?
  • いまさら聞けないJSONPのまとめ

    JSONPについてまとめました。 1.はじめに JSONやJSONPが流行り出したころ、JSONはまあそれなりに理解できたのですが、JSONPの仕組みや振る舞いについてなかなか理解できず、過去に色々調べてまとめたのですが、まとめたものをブログに公開しないまま放置していました。 ということで、スライドを作っていたのを思い出したので、SlideShareにアップロードしたものをこちらでも公開します。 情報がやや古いかもしれませんし、認識誤り等あればどこかでつぶやいてください。 2.JSONPのまとめ

    bleu-bleut
    bleu-bleut 2015/05/25
    JSONPって使わず仕舞いだったけど、こんな変な仕組みだったんだ。
  • JSONかどうかを判定する関数 - Qiita

    var isJSON = function(arg) { arg = (typeof arg === "function") ? arg() : arg; if (typeof arg !== "string") { return false; } try { arg = (!JSON) ? eval("(" + arg + ")") : JSON.parse(arg); return true; } catch (e) { return false; } };

    JSONかどうかを判定する関数 - Qiita
    bleu-bleut
    bleu-bleut 2015/02/16
    JSON関数がサポートされていないブラウザを考慮に入れなければ、eval関数を使わなくて済む。
  • 1