タグ

cacheに関するlax34のブックマーク (28)

  • 開発者が知るべきキャッシュ設計でよく遭遇する問題

    はじめに 分散システムの設計および開発において、キャッシュはパフォーマンス向上のための非常に重要な要素です。頻繁にアクセスされるデータをキャッシュすることで、アクセス速度が遅いデータベースへのアクセスを削減し、データへの迅速なアクセスを可能にします。これにより、システムの全体的な効率とパフォーマンスが向上します。 しかし、キャッシュは慎重に設計しないとむしろパフォーマンス上のデメリットになるケースが存在します。 この記事ではよく遭遇するキャッシュ設計の問題とその回避策について解説します。 Cache penetration DBに存在しない値を検索したときに、DBから返された空の結果をキャッシュしない場合に発生するシナリオです。 このシナリオではDBに存在しない値を繰り返し検索することにより、その値がキャッシュされていないため検索ごとにDBへのアクセスが必要になってしまいます。 存在しない

    開発者が知るべきキャッシュ設計でよく遭遇する問題
    lax34
    lax34 2023/12/22
  • Cache-Controlヘッダのmax-ageとs-maxageの違いと使い道

    明示的 意味 แพลตฟอร์มการเรียนรู้และพัฒนาทักษะด้วยเทคโนโลยี https://suin.io เป็นแพลตฟอร์มที่ให้คุณเรียนรู้และพัฒนาทักษะทางเทคโนโลยีอย่างสะดวกสบาย เรามุ่งมั่นในการให้ความรู้และประสบการณ์ที่มีคุณค่าในการพัฒนาตนเอง pascalcase

    Cache-Controlヘッダのmax-ageとs-maxageの違いと使い道
  • HTTPキャッシュ入門の入門 – cat /dev/random > /dev/null &

    ローカル・経路上のキャッシュを併用しよう キャッシュは再利用されるほどいいものです。 サイトの規模にもよるのですが、ローカルと経路上のキャッシュはそれぞれ性質が異なるため、ブラウザキャッシュだけ適切に設定しておけば経路上では不要というわけではありません。 ローカルキャッシュはキャッシュを持つクライアント自身がサイトを再訪する場合は有効ですが、キャッシュを持っていない新規クライアントには無効です。 経路上のキャッシュは新規クライアントに対してもキャッシュを返すことができるため、例えばサイトへの流入が突然増えるといった事態でも対処がしやすいです。 そのためコンテンツ次第ではありますが、ブラウザキャッシュのように特定のクライアントでしか使えないprivate cacheにするよりも、 効率を考えてローカル・経路上のどちらでもキャッシュができ、多数のクライアントで共有できるshared cache

  • CDNに動的コンテンツを安全に通すにはどうするべきか - 方向

    メルカリでCDNにキャッシュされるべきでないページがキャッシュされることにより個人情報の流出が発生してしまうインシデントがありました 自分は動的コンテンツをCDNで配信することにあまり積極的ではない立場だったのですが流出への反応を見るとCDNを利用しているサービスはかなり増えてきているようです 個人情報やユーザーのプライベートデータを決して流出しないようにしつつCDNを利用する方法を考えてみました CDN利用のメリット このふたつ 経路が最適化されレイテンシが小さくなる DDoS対策となる キャッシュされないようにする方法 Twitterで動的コンテンツもCDN通すの当たり前でしょーと言ってる人にリプしてきいてみました CDNとレスポンスヘッダで二重にキャッシュを無効化する キャッシュを細かくコントロールCDNを使う ホワイトリスト方式で特定のパスのみキャッシュを許可 ログインセッションを

    CDNに動的コンテンツを安全に通すにはどうするべきか - 方向
  • PHPセッションをmemcachedで管理する件 - Qiita

    デフォルトのファイルベースでのセッション管理と比べて 複数のWEBサーバ間でセッション共有してくれたり、今更感はあるけど 幸せになれそうなのでやってみます。 ちなみにNginx+FastCGI環境です。 導入 インストール PHPがインストールされている前提です。 PHPのモジュールにはmemcachedを使用します。memcache(激似)というものもありますが、有志の比較によると現状こちらの方が早いとの事なので。絶賛開発合戦中なので将来的にはわかりませんが。

    PHPセッションをmemcachedで管理する件 - Qiita
  • Keep Symfony2 sessions through cache:clear

  • Angular IE Caching issue for $http

    All the ajax calls that are sent from the IE are cached by Angular and I get a 304 response for all the subsequent calls. Although the request is the same, the response is not going be the same in my case. I want to disable this cache. I tried adding the cache attribute to $http.get but still it didn't help. How can this issue be resolved?

    Angular IE Caching issue for $http
  • IEのAjax Cacheに注意 - Kazzzの日記

    アプリケーションをデプロイした後、利用者から「リロードしてもデータが最新にならない」「更新したはずのデータが書き変わらない」というクレームを受けたので調べてみると以下のようなログが出ていた。 データの更新後、$location.path("/path")内部パスを変える処理を行っているのだが、パスを変えた後のGETリクエストが全てHTTP 204で返って来ていることが分かる。(後で調べるとと304の時もあった) 普段、開発とテストに使用しているChromeでは見たことが無いので、UAを調べると案の定IE(IE10、IE11)だった。 調べてみるとIE(少なくとも10と11)はAjaxのリクエストを勝手にキャッシュするようで、このログが表示されている間はサーバに全く問合せに行っていなかった。 この問題(IEだけのようだが)解決するにはHTMLのヘッダーのようにリクエストのヘッダを明示的にキャ

    IEのAjax Cacheに注意 - Kazzzの日記
  • AngularJS キャッシュをクリアする – rilakkuma3xjapan's blog

  • 複数のWebサーバでSSLセッションキャッシュを共有してSSL処理を高速化(Apache + mod_ssl + mod_socache_memcache) - 元RX-7乗りの適当な日々

    HTTPS(SSL利用)サイトがSEO的に優遇されるトレンドで、世間的にもHTTPS接続でサイト運用するサービスが増えてきています。 これが、ハイトラフィックサイトになってくると、このフロントエンドでSSL処理させることが負荷的にもなかなか辛いのです。 で、Apache 2.3以降では、Shared Object Cache Providerとして、memcachedが選択できるようになっています。 この仕組みを利用して、Apacheとmemcachedを並べることで、各サーバでユーザのSSL Session Cacheを共有しながらHTTPSリクエストを負荷分散できる構成を作ってみました。 WebサーバでSSLオフロード 常時SSLを利用したWebサイトを運用するために、SSLアクセラレータといったアプライアンス製品だとか、ソフトウェアだとApacheやNginxのSSLモジュールを使う

    複数のWebサーバでSSLセッションキャッシュを共有してSSL処理を高速化(Apache + mod_ssl + mod_socache_memcache) - 元RX-7乗りの適当な日々
  • app/console cache:clearするときは--no-warmupオプションつけると幸せ - jiska

    先日行われたSymfony2勉強会に参加してきました。 会場を提供してくれたZynga Japanさん、企画開催をしてくださったスタッフの皆さん、プレゼンを発表された方々、一緒に参加した皆さんに感謝です。すばらしいイベントだったので今後も参加していきたいですね。 さて、symfony1を使っている方がSymfony2をさわって一番最初につまづくのがsymfony ccに変わるapp/console cache:clearの挙動だと思うんです。 symfony1でcache:clearを行うとcacheディレクトリ以下のファイルを全削除して終わりだったのですが、Symfony2のapp/console cache:clearを動かすとcacheディレクトリ以下のファイルを消した後に再作成を行います。 その結果webサーバーの実行ユーザーとapp/consoleを実行したユーザーとが違う場合、

    app/console cache:clearするときは--no-warmupオプションつけると幸せ - jiska
  • はてなブログにおけるページ表示速度改善の取り組みについて - Hatena Developer Blog

    こんにちは、id:hakobe932です。はてなブログではユーザ体験の改善のために、ページ表示速度を向上させるための様々な取り組みを行っています。このエントリーでは、はてなブログで行っている、ブラウザキャッシュの活用、JavaScriptのページ最下部での読み込み、JavaScriptの圧縮、という3つの取り組みについて解説します。 ブラウザキャッシュの活用 同じ内容のJavaScriptCSSを、ページを表示するたびにダウンロードすると、余分なHTTPリクエストが発生しますし、読み込み時間がかかります。 ブラウザのキャッシュを利用できれば、余分なリクエストを減らすことができます。はてなブログでは、なるべく長い間ブラウザにキャッシュを保存するために、JavaScriptなどの一部の種類のファイルのレスポンスに、以下のようなヘッダを指定しています。 $ curl -I http://hat

    はてなブログにおけるページ表示速度改善の取り組みについて - Hatena Developer Blog
  • jQuery/JavaScriptの高速化テクニック | Find Job ! Startup

    FINDJOB! 終了のお知らせ 2023年9月29日にFINDJOB!を終了いたしました。 これまでFINDJOB!をご利用いただいた企業様、求職者様、様々なご関係者様。 大変長らくFINDJOB!をご愛顧いただき、誠にありがとうございました。 IT/Web系の仕事や求人がまだ広く普及していない頃にFind Job!をリリースしてから 約26年間、多くの方々に支えていただき、運営を続けてまいりました。 転職成功のお声、採用成功のお声など、嬉しい言葉もたくさんいただきました。 またFINDJOB!経由で入社された方が人事担当になり、 FINDJOB!を通じて、新たな人材に出会うことができたなど、 たくさんのご縁をつくることができたのではないかと思っております。 2023年9月29日をもって、FINDJOB!はその歴史の幕を下ろすこととなりましたが、 今後も、IT/Web業界やクリエイティブ

    jQuery/JavaScriptの高速化テクニック | Find Job ! Startup
  • https://support.microsoft.com/ja-jp/help/316431

    すべて Microsoft 製品 Microsoft 365 Office Windows Surface Xbox セール サポート ソフトウェア Windows アプリ OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画テレビ番組 法人向け Microsoft Azure Microsoft Dynamics 365 Microsoft 365 Microsoft Industry データ プラットフォーム Power Platform 法人向けを購入する Developer & IT .NET Visual Studio

  • IE×Flash×SSL : tech.kayac.com - KAYAC engineers' blog

    最近めっきりソースを書く機会を失ったkusagayaです。 以前IE×Flash×SSLではまったことを書こうと思います。 以前やった案件でSSLを使う案件があったのですが、 その際にFlashが表示されないという現象がありました。 コードを書き換えた覚えもないし、Firefoxで確認しても普通に表示される。 ちょっと前にIEで確認した時も普通に表示されていたしなーと思っていたんですが、 実はその時はまだSSLで通信しておらず、 見れなくなったのはSSLで通信するように変えてからだということがわかりました。 弊社nagayasuがIEとFlashとSSLで何か問題があったことを覚えていたので、 それで調べてみたら一発でした。 みなさんもはまっていたみたいですね、大量の記事が引っかかりました。 「Pragma:no-cache」 これがあるのが原因とのこと。 記事を読んでみると 「Inter

    IE×Flash×SSL : tech.kayac.com - KAYAC engineers' blog
  • Webアプリケーションを高速化する50のトリック

    MicrosoftのInternet Explorer PMであるJatinder Mann氏は、BUILD 2012でHTML5アプリとサイトを高速化する50のパフォーマンストリックというセッションで、Webアプリケーションを高速化する多くのチップスを提供した。 Mann氏が提供したアドバイスは、以下の6つの原則を中心に構成されていた。 1. ネットワークリクエストに迅速に応答する リダイレクトを避ける。上位1,000のWebサイトのうち63%は、リダイレクトを使用している。これらはリダイレクトをやめることによって10%のパフォーマンスを改善することができる。 メタリフレッシュを避ける。世界のURLのうち14%は、メタリフレッシュを使っている。 可能な限りユーザーの近くにあるCDNを使用してサーバーの応答時間を最小化する。 異なるドメインからのリソースをダウンロードすることによって、同時

    Webアプリケーションを高速化する50のトリック
  • iOS6 Mobile SafariがAjax POSTでキャッシュする問題を回避する方法 | DevelopersIO

    iOS6出た! iOS6が出来ましたね。社内ではiPhone5を入手した社員がLTEの速度に驚いていました。私はまだiPhone4Sですが、iOS6にして新しい機能を楽しんでいるところです。さて、iOS6にしてSafariの仕様が変わって困ったと言った投稿が海外のフォーラムで挙っています。それも、基的なPOST通信についてです。これは困ったということで、動作を確認して対策方法についてシェアしたいと思います。 どんな時にPOSTをキャッシュする? まずはどんな状況か確認してみたいと思います。 Cache-ControlもExpiresも無い場合 : iOS6 Mobile SafariはPOSTをキャッシュする Cache-Control max-age=0指定 と Expires指定 : iOS6 Mobile SafariはPOSTをキャッシュする Cache-Control: no-

  • Linuxのメモリ上のキャッシュを解放する - 元RX-7乗りの適当な日々

    いつも思いだすのに時間がかかるというか、ググるのでメモ。 例えば、ベンチマークとかをとっていて、残ったキャッシュを奇麗さっぱりに消したい時とかに使う。 Linuxのメモリで保持しているキャッシュをクリアするには、以下を実行する。 # sync # echo 3 > /proc/sys/vm/drop_caches 値の意味としては、、、 1: ページキャッシュを解放 2: dentry、inode を解放 3: ページキャッシュ、dentry、inode を解放 以下を参考に。 /proc/sys/vm/drop_caches (Linux 2.6.16 以降) このファイルに書き込みを行うことで、クリーンなキャッシュ、dentry、 inode をメモリ上から外し、そのメモリを解放する。 ページキャッシュを解放するには、 echo 1 > /proc/sys/vm/drop_caches

    Linuxのメモリ上のキャッシュを解放する - 元RX-7乗りの適当な日々
  • HTML5 × CSS3 × jQueryを真面目に勉強してみる – #3 オフラインWebアプリケーション | DevelopersIO

    そんな訳で、HTML5のオフラインWebアプリケーションに触れてみることにします。 前置きのようなもの Webアプリケーションというくらいだから、当然ネットワークに接続し、目的のページをダウンロードして表示するわけです。 ということはオフライン状態では、Webアプリケーションは一切使うことができないということになります。そりゃそうだ。 ではオンライン状態の間にWebアプリケーションのリソースを、ローカルのストレージ領域にごっそりキャッシュ(ダウンロード)してしまったらどうでしょう? 以降はそのリソースを参照すれば、オフラインだろうが問題なっしんぐだし、オンラインであってもHTTP通信するよりパフォーマンスの向上が見込めますよね。 この単純明快な力技こそが、HTML5のオフラインWebアプリケーションの仕組みなのです。 とはいっても、アクセスしたページがHTML5なら片っ端からキャッシュする

  • yum fastestmirrorが遅い( しゃいん☆のブログ| 名古屋市 Webシステム開発 サーバ構築 ネットワーク構築 株式会社コネクティボ )

    CentOS 5では、yumを利用する際に高速なミラーサイトを自動的に選択してくれる機能があります。 yumを実行したときに、 Loading "fastestmirror" plugin のように表示されれば、該当のパッケージが入っています。 表示されない場合は、以下のようにしてインストールしてみましょう。 # yum install yum-fastestmirror 通常であれば、これで高速なミラーサイトを利用可能なはずですが、最初は速かったのに後で遅くなった場合などは、劇遅ミラーを選択されている可能性があります。 そういった場合、下記方法にて回避するとよいでしょう。 方法1: Ctrl+Cを押す これは、一般的に使える方法です。 yumを使っていて転送速度が上がらない場合、Ctrl+C(Break)を投げてやりましょう。 そうすると、自動的に次のミラーサイトにつながります。 fas

    yum fastestmirrorが遅い( しゃいん☆のブログ| 名古屋市 Webシステム開発 サーバ構築 ネットワーク構築 株式会社コネクティボ )