はてなキーワード: Cookieとは
前提として、今の5ちゃんねるってグロ画像やら支離滅裂な書き込みを連投しまくるスクリプトによってガチでここ数ヶ月以上機能停止するほど荒されまくってて
んで運営が全然対策できてない状態なんだけど、エンジニアリングとかインシデント対応方針とかの観点から見てなんで運営がここまで対応できないのか教えてほしい
技術的に専ブラでもCookie使えるなら別URL挟んで簡単なCAPTCHA認証しないと書き込めなくするとか、忍法帖みたいに書き込みできるまでのインターバルを必要にするとか、VPNを弾くとか、そもそも業務妨害で警察の協力を仰ぐとか、
なんかいろいろやりようがある気がするし、なんなら諸々の対策方法は本職のユーザーから他にもいろいろ提案されてたりするんだけど
それらの技術的対策が行えない技術的な理由が何かあるんだろうか
それとも、やり方はわかってるけど例えば対応能力があるエンジニアがいないとか技術的負債が大きすぎて誰も本番環境をさわれない状態とか、そういうのがあるんだろうか?
こういうのに詳しい人見解を聞かせてくれ
え? CookieってHTTPヘッダーで送受信してるアレだろ?
それが本当なら、1リクエストのたびにアンタのブラウザは数百メガバイト送信してることになるじゃん。
1ページ開くのにどんだけ時間かかってんの?
今試したけど1回目は135KBだけどリロードすると250MBぐらい食うな
「サードパーティの Cookie をブロックする」と「閲覧トラフィックと一緒に「Do Not Track」リクエストを送信する」をオンにしておかないとゴミが溜まるサイトだわ
amazon上で検索すると無限リダイレクトするから、cookie消そうと思って chrome://settings/content/all にアクセスしたらTBSとプレジデントだけで1GBくってたから消した
はてぶの上位にちょいちょい載ってるTBS系のニュースサイト、newsdig.tbs.co.jpについて。
https://b.hatena.ne.jp/site/newsdig.tbs.co.jp/
何がヤバいかって、くっそ巨大なCookie(LocalStorageとかも含むのか知らんけど)をしこたま保存してんのよ。
気付いた時点では640MBも占有してた。別に巡回チェックしてるわけでもなく、話題に挙がってたら見てみることもある程度のアクセス頻度なのだが。
Chromeユーザーはアドレスバーに↓コピペして確認してみてくれ。
chrome://settings/content/all?searchSubpage=tbs.co.jp&search=cookie
試しにCookie消去してから、ただ開いただけでサイト上で何の遷移もしてないのに279MBも保存された。
次点ではpresident.jpが553MB消費してた。(こっちも話題に挙がってたら見てみることもある程度。)
(その次にはGoogleが数百MBオーダーで消費してたけど、これはGoogleドライブのオフラインキャッシュとか考えれば妥当。他に数百MBオーダーで消費してるサイトは無かった。)
多くのサイトは数バイト~KBオーダーなのに、こいつら何保存してんのか不気味すぎる。
(追記)
各自の環境の消費量を教えてくれた方々や有意義なコメントを下さった方々ありがとうございます。
始めにお断りしておくべきだったかもしれませんが、自分はソフトウェア系ではありますが、Webエンジニアではありません。認識が浅かったり、古かったり、そもそも間違ってる可能性もあります。
CookieじゃなくてCacheStorageやんけと突っ込みもいただいていますが、「LocalStorageとかも含むのか知らんけど」と書いておいた意図は(どのような技術要素かはどうでもよくて)ユーザー端末に保存されるデータボリュームについての話を意図しています。ChromeのCookie絡みの設定画面での表示なのでこのような書き方をしましたが、解り難かったのならごめんなさいね。冗長ながらも認識齟齬を招かないように平易な表現で書くと、「ユーザの明示的な承諾なくユーザー端末に保存されるデータがデカイんだが」って話です。
で、各自の環境で「ユーザの明示的な承諾なくユーザー端末に保存されるデータ」が数GBオーダーにも及ぶという事例が少なからず報告されて、自分の環境だけではない事象だということが判りました。
さらにtbsとpresident以外にもいくつかのサイトが同様に肥大化していることも知れました。
結果的にはid:hinaloeさんの解説が解りやすかったです。ありがとうございます。
https://blog.hinaloe.net/2023/04/27/chrome-too-large-cache-storage/
CacheStorageがChromeの表示と、実際のディスク消費量と一致していないことが原因であると理解しました。
追試してみたところ私の環境ではChromeの開発者ツールでの表示が74MBで実際のWindowsのファイルシステム上は33.9MB消費されました。
実際のストレージの消費は表示値の半分程度ということになり、id:hinaloeさんの1.4GBに対して5MBのように実際の約0.3%という結果とは大きく乖離がありますので、各環境で大きく違いそうな気がします。
%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default\Service Worker\CacheStorage
※配下のどのディレクトリが対象サイトのものなのか一意に特定する情報が無さそうなので、Chrome開発者ツールのApplicationタブの左上の方にあるService Workersを選択すると、右側にReceived YYYY/M/D HH:MM:SSみたいな表記が有るので当該時刻に変更されたタイムスタンプを持つディレクトリを特定するような感じになるかと思います。
ついでに開発者ツールを触っていて気付いたベースで書いておくと、
といった感じで、ユーザが見たものをキャッシュしているのではなくて、先読みしてるような挙動に思えます。
ロード時間短縮でUX改善を狙ったものかもしれませんが、個人的にはそれを1か月も保持し続けるのは過剰な感じがしますが世の中的にはどうなんでしょうね?
(追記2)
hinaloe氏の投稿で紹介されているStackOverflowの投稿やそのリンク先のChromiumのバグレポートのやり取りまで目を通してみると、特に理由の説明なく平均7MBがパディングされると書かれた投稿があります。
https://stackoverflow.com/questions/39109789/what-limitations-apply-to-opaque-responses
https://bugs.chromium.org/p/chromium/issues/detail?id=796060
該当するソースコードは↓のようです。
この中で、ComputeRandomResponsePadding()という関数を呼び出しておりその実体は↓のようです。
この関数は符号無し64bit整数の乱数(つまり、0~18446744073709551615のいずれか)を14431 * 1024 = 14777344で割った剰余(つまり、0~14777343≒約14MiB)を返却します。
これがパディング値として採用されることになりますが、乱数が正規分布している前提で、平均すると(最大値14MiBの半分で)約7MBになるよねってことだと思われます。
故にChromeの設定画面から確認できるCookie等(LocalStorageとかCacheStorageとか諸々含む)のサイズは、概算してCacheStorageに存在するファイル数×平均7MBが過大計上されていることになりそうです。
これでChromeの設定画面から確認できるサイズと、実際のファイルシステム上で消費されているサイズの違いは合理的に説明できますが、TBS等の特定のサイトだけデカくみえる理由の説明にはならないのです。
なんなんすかね?
コンテナータブに依存するから依存する拡張機能が有効ならコンテナータブが強制有効になるのはわかる
でも依存する全部の拡張機能を止めたらコンテナータブが無効になるってわけわからん
んで再度有効化したら設定がデフォルトに戻って手動追加したコンテナーも消えてるの本気で意味わからん
どうして強制上書きするんですか??????????設定にリセットボタンでもつけとけ
あれやこれやのログイン情報全部消えたんですが????????????????????????????
しょうがないから思い出してコンテナー追加したけどこれ並び替えも出来ないのな
前と順番変わっててすこぶる気持ち悪い
Multi-Account Containersの拡張を使ってたらこいつを無効にしたら設定リセットになるのは百歩譲って…いや一時無効にしただけでjsonファイルをデフォルト化って意味不明だけど億歩譲って我慢するわ
でもお前、標準機能だろ?お前を使うかどうかはabout:configで俺が決めさせてくれよ
せめてどこかに注意書き書いとけよ
書いてた?俺が悪かったその場所教えてくれ。光速でブクマするわ。さっさと出せよ。
もしかして俺の勘違いで別の操作が影響してる????謝罪するから原因を教えてくれよ通知もないから妄想で怒るしかねーんだよこっちは
もうマジで意味不明だわ最近Android版でtampermonkey復活したからちょっと株上がったと思ったらこれだよ。多分何年も放置されてる仕様だろこれマジこんなうっかり地雷しこまれると体験損なうんだが
設定消えるなら警告のひとつでもだしてくれ
あとついでにグチるとCookieの許可設定を変更できるようにしてくれ
なんで一度消して同じURLを再登録しないと変更できないんだよ