タグ

performanceに関するs99e209のブックマーク (29)

  • ブラウザはCSSのセレクタを右から読む、ほんまか? - Qiita

    先日、 ブラウザ君「ワイはCSSのセレクタを右から読むんや」 という記事を読みまして、ちょっと気になったので後で確かめようと思っていたのですが、なんとなくそのままになってしまいやや旬を逃した感がありつつ、ツッコミを入れてみようと思います。 なお『ワイ「ほげほげ」』みたいな形式は使いません1。恥ずかしいので。 私は仕事Chromiumのソースコードをよく読んでいるので、ChromiumのソースコードからCSSの処理を見つけて、それを基準にして解説しようと思います2。そのため、他のブラウザのレンダリングエンジンと異なる最適化が施されている可能性があります。また、現在のソースコードがそうでも、将来的に別の方法に変更される可能性もあります。あくまで、ブラウザの処理の一例であることをご了承ください。 ChromiumC++で開発されていて、私もC++畑のですが、今回の記事は随所にリンクを挿入し

    ブラウザはCSSのセレクタを右から読む、ほんまか? - Qiita
  • 【PHP8.0】PHPでJITが使えるようになる - Qiita

    2020/06/26追記:アルファ版がリリースされたので実際に試してみた JITのRFCが2019/03/21に投票開始されました。 締切は2019/03/28ですが、2019/03/27時点で賛成48反対2でほぼ導入確定です。 JITとは JIT is 何? PHPは現在は、アクセスが来るたびにソースコードを全部読み取って、opcodeに変換して、順番に逐次実行して、実行が終了したら全てのコードを破棄するというインタプリタ型のプログラミング言語で、処理速度は遅いです。 遅いと言っても、やってる内容からすれば異常なまでに早いんですけどね。 opcodeはCPUやOSなどの実行環境によらず同一のコードが生成されます。 逐次実行するときはさらに実行環境ごとのネイティブコードに変換して実行されます。 OPcacheは、この変換後のopcodeをメモリに保存しておいて、次のリクエストでも使い回すと

    【PHP8.0】PHPでJITが使えるようになる - Qiita
  • How to 速度改善 ーWebパフォーマンスについて知っておきたいこと7選ー - Qiita

    今回のテーマ Webパフォーマンスを改善する上で知っておきたい知識をまとめてみました。 前回の記事では使わなかった(使えなかった)技術や方法なども含めて記載します。 また、ブラウザのレンダリングなどについても書きたいと思います。 (2019年5月23日追記) 過去の記事はこちら How to 速度改善 ー計測・知識編ー How to 速度改善 ー原因調査編ー How to 速度改善 ー実装&技術調査編1ー 1. ブラウザレンダリングの仕組み 推測するな、計測せよ という言葉にあるように、闇雲にチューニングを初めても良い結果は出ません。まずはブラウザレンダリングの仕組みからみていきましょう。 ブラウザレンダリングの流れ レンダリングの大まかな流れは Loading→Scripting→Rendering→Painting(これでページが表示される) となっています。 この処理の内容をフレーム

    How to 速度改善 ーWebパフォーマンスについて知っておきたいこと7選ー - Qiita
  • PHPで簡単に永続プリロードできるようになる - Qiita

    PHPはHTTPリクエストが来るたびに全てのPHPコードをバイトコードに変換し、そして実行しています。 毎回そんなことやってるのにあれだけ速度が出るのは驚異的ですが、それでもやはりコンパイルにかかる時間だけどうしても遅くなってしまいます。 そこで、もっと高速化するためにOPcacheのような仕組みが存在します。 これはバイトコードをメモリ上に保持し、リクエストを超えて使い回すことでコンパイルの手間を省略し、高速化を実現するというものです。 効果はというと、単純なものでもターンアラウンドタイムが2/3、大きなフレームワークでは半分以下と、お手軽かつ強力な効果があります。 とはいえOPcacheには、元のPHPファイルに変更があるかどうかを監視したりといった僅かなコストが残っています。 特にバイトコードはファイル単位でしかキャッシュできないらしく、extendsなどで別のファイルを参照している

    PHPで簡単に永続プリロードできるようになる - Qiita
  • Introduction · Webフロントエンド パフォーマンス改善ハンドブック

    Webフロントエンド パフォーマンス改善ハンドブック このパフォーマンス改善ハンドブックでは、ウェブアプリケーションにおけるフロントエンドのパフォーマンス改善について扱っています。 ダウンロード版 埋め込み動画を再生できないなど一部制限がありますが、ダウンロード版を配布しています。 PDF版 EPUB版 MOBI版 目的 このハンドブックでは過去に行った改善の事例を中心に紹介しています。 そのため、現在の最適な解決方法を提案するものではありません。 また、アプリケーションによっても最適な解決方法は異なります。 今回の事例ではViewライブラリにReactを使い映像再生プレイヤーなどある程度複雑な機能を持ったウェブアプリケーションのフロントを扱います。 具体的にはニコニコ生放送(以下「生放送」)で行った事例を中心に書かれています。 開発と平行して行われていたため、React 15から16の間

  • 一休.comスマホサイトのパフォーマンス改善(JavaScript編) - 一休.com Developers Blog

    宿泊事業部の宇都宮です。 一休.com スマホサイトのホテルページパフォーマンス改善プロジェクトでは、フロントエンドには以下のような要件がありました。 デザイン面は既存を踏襲する 機能はほぼ従来通り 日付等を変更した際の再検索は、画面遷移を挟まず、画面内で行えるようにする パフォーマンスをできるだけ改善する 要するに、従来と同様の機能+αを実現し、かつ、従来と同等以上のパフォーマンスを実現する、というミッションです。 このために、どのような取り組みを行ったか、紹介します。 パフォーマンス目標値の設定 まず、パフォーマンスの目標値を設定する必要があります。モバイルでは、ユーザの帯域幅は回線や時間帯によって大きな変動があります。多少回線状況が悪くても、閲覧を妨げない程度のパフォーマンスを実現する必要があります。 一休へアクセスするユーザのモニタリングを見ると、極端に遅い回線を使っているユーザ

    一休.comスマホサイトのパフォーマンス改善(JavaScript編) - 一休.com Developers Blog
  • Webフロントエンド パフォーマンス改善ハンドブックを公開しました - dwango on GitHub

    パフォーマンス改善ハンドブック ウェブページにおけるパフォーマンスに関する問題の見つけ方や考え方の事例をまとめた Webフロントエンド パフォーマンス改善ハンドブックを公開しました。 URL: https://dwango-js.github.io/performance-handbook/ このハンドブックでは過去に行ったWebフロントエンドのパフォーマンス改善の事例を中心に紹介しています。 注意点としてWebフロントエンドは常に変化しているため、現在の最適な解決方法を提案するものではありません。 また、アプリケーションによっても最適な解決方法は異なります。 今回の事例ではViewライブラリにReactを用い、映像再生プレイヤーなどある程度複雑な機能を持ったウェブアプリケーションのWebフロントエンドを扱います。 具体的にはニコニコ生放送(以下「生放送」)で行った事例を中心に書かれていま

    Webフロントエンド パフォーマンス改善ハンドブックを公開しました - dwango on GitHub
    s99e209
    s99e209 2018/09/14
    時間あるときに全部読んでみる。
  • サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。先日親知らずを抜歯した時、つらすぎたので MySQLJOIN のことを考えて心の平静を保っていました。 サイボウズの製品のひとつである kintone はニーズに応じて自由に業務アプリのようなものを手軽に作ることができ、データの検索条件やソート条件も細かくカスタマイズ可能で、様々なレベルでのアクセス権も設定可能という非常に便利なツールです。 しかしその機能を支える裏側では複雑なクエリが発行され、MySQL に多大な負荷をかけています。サイボウズのクラウドには数十テラバイトに登る MySQL データがあり、数千万件オーダーのテーブルを複数 JOIN するクエリが毎秒のように実行されるという、エンジニア魂が滾る環境です。 現在サイボウズでは性能改善に力を入れており、僕もその業務に従事しています。例えば2018年

    サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ
    s99e209
    s99e209 2018/08/08
    MySQLのオプティマイザはさほど賢くないため、アプリケーション側でオプティマイザ以上に賢く JOINの順序を制御する必要あり。
  • xhprofでパフォーマンスチューニング入門 - Qiita

    記事はマイネット Advent Calender7日目の記事です。 今回は社会人になってから(主にお腹周りの)成長が目覚ましい@w_cotaがお送りします。 はじめに 弊社ではスマートフォンゲームの運営を行っています。直近では他のゲーム会社からのタイトルを引き取って運用しているプロジェクトも増えてきております。弊社で開発したタイトルも含め、買収・協業のタイトルの中にはリリースから2年、3年と経過している長寿タイトルも多く見受けられます。 さて、長期間運営を重ねていきますと避けられない問題の一つが技術的負債の積み重ねかと思います。いかに優秀なエンジニアがいようと、いかに素晴らしい開発フローを採用していようとどうしても日々様々なタスクに追われる日常の業務の中では以下のようなシーンが発生し得るかと思います。 イベントリリースまでもう時間無いし、ちょっと実装ダサいけどこのままリリースして次回直そ

    xhprofでパフォーマンスチューニング入門 - Qiita
  • 今月導入される Google Speed Uptate は速ければ速いほど評価が上がるアルゴリズムだった

    [レベル: 中級] 【UPDATE】 この記事は事実を正しく反映していないことが判明しました。 こちらの記事で説明しています。 ページの読み込み速度をモバイル検索のランキング要因として用いる “Speed Update”(スピード アップデート)を Google は今月導入する予定です。 Speed Update は、当に遅いページだけが影響を受けるアルゴリズムだと思われていました。 しかしながら実際には、速ければ速いほど評価が上がるアルゴリズムになっているようです。 Speed Update では、読み込み速度が速いと段階的に評価が上がる Speed Update の導入を事前アナウンスした公式ブログの記事は次のように説明していました。 The “Speed Update,” as we’re calling it, will only affect pages that delive

    今月導入される Google Speed Uptate は速ければ速いほど評価が上がるアルゴリズムだった
    s99e209
    s99e209 2018/07/02
    AMPの標準化が進みそう。
  • imgix導入で画像最適化とサイトスピードを改善した話 - 一休.com Developers Blog

    こんにちは。 一休.comの開発基盤を担当しています、akasakas です。 今回は、画像最適化配信サービスであるimgixを宿泊・ レストランサイトに導入して、 画像最適化・サイトスピード改善につなげたお話をしたいと思います。 ここでお話しする内容 サイトスピードという観点での一休が抱えていた課題(の一部) imgixの特徴とそこでできる解決策 imgix導入の効果 imgix導入をする上で大変だったこと これから画像最適化を考える人たちへ まとめと感想 おまけ(与太話) 諸注意 imgixを導入して、画像最適化という面でサイトスピード改善につながりましたが、 サイトスピードという観点で一休が抱えている課題はまだまだあります。 imgixを導入すれば、サイトスピードは万事解決!!!という話ではありませんので、悪しからず。 サイトスピードという観点での一休が抱えていた課題(の一部) 画像

    imgix導入で画像最適化とサイトスピードを改善した話 - 一休.com Developers Blog
    s99e209
    s99e209 2018/07/02
    結局、ページの表示スピードが遅い原因はなんだかんだ言って画像のファイルサイズであることが多いので、imgixは導入してみたいかも。
  • Introduction | Frontend Performance

  • 画像最適化戦略 WebP 編 | blog.jxck.io

    Intro サイトの PNG/JPEG で提供している画像については、よりサイズが小さくなりやすい WebP 形式を提供し、対応ブラウザに配布するようにした。 フォーマットを出し分けるため、画像の指定は <picture> 要素を用いて対応した。 画像最適化シリーズ第 3 回目のエントリである。 画像最適化戦略 PNG/JPEG 編 画像最適化戦略 Picture 編 > 画像最適化戦略 WebP 編 画像最適化戦略 SVG/Font 編 画像最適化戦略 Lazy Loading 編 WebP 従来の Web において、画像は用途毎に PNG/JPEG/GIF などを使い分けていた。 一般的には以下のような使い分けが行われている。 WebP は Google が開発した画像フォーマットであり、これら三つの用途全てに適した上で、さらに小さいサイズに圧縮できる場合が多い。 また、 WebP

    画像最適化戦略 WebP 編 | blog.jxck.io
  • Google製の新しい圧縮アルゴリズム Brotli を軽く使ってみた - Qiita

    Help us understand the problem. What is going on with this article?

    Google製の新しい圧縮アルゴリズム Brotli を軽く使ってみた - Qiita
  • Front-End Performance Checklist 2021 (PDF, Apple Pages, MS Word) — Smashing Magazine

    Let’s make 2021… fast! An annual front-end performance checklist (available as PDF, Apple Pages, MS Word), with everything you need to know to create fast experiences on the web today, from metrics to tooling and front-end techniques. Updated since 2016. Ah, you can also get useful front-end tips in our email newsletter. This guide has been kindly supported by our friends at LogRocket, a service t

    Front-End Performance Checklist 2021 (PDF, Apple Pages, MS Word) — Smashing Magazine
  • HTTP/2が速いという幻想 - Webパフォーマンスについて

    難しい話じゃないです。 皆さん、ご自分でChrome Developer Toolで簡単に確認できますから、やってみて下さい。 このブログでも、過去に統計分析をした結果は掲載したんですが、「盲信」はそうそう簡単には消えないようでして… takehora.hatenadiary.jp takehora.hatenadiary.jp 以下の図は、Chrome 63.0.3239.108での結果です。 CDNにFastlyでもAWS CloudFrontでも、どのCDNを使って実験して頂いても結構です。 CDNを使わずに、Webサーバ単体でも結構です。 同様の結果になります。 どちらもHTTPS通信です。 どちらも同じオリジン、同じファイル構成です。 HTTP/1.1は、Keep-Alive設定が入っています。 HTTP/1.1での配信 … Load Event 70ms HTTP/2での配信

    HTTP/2が速いという幻想 - Webパフォーマンスについて
  • とりあえずシュッとパフォーマンスチューニングの目星を付ける - ぱすたけ日記

    この記事ははてなエンジニアアドベントカレンダー2017の14日目*1であり、且つ後輩が徳島旅行に行っているので、日程がスワップされた結果KMC Advent Calendar 2017の14日目の記事でもあります*2。 はてなエンジニアアドベントカレンダーの13日目の記事は id:amagitakayosi さんのインターネット溶かすボタンできた - マルシテイアでした。KMCアドベントカレンダーの13日目の記事は id:opesan くんの 聖地巡礼記2017 - おぺの日記でした。 さて、今年2017年は素晴らしい年で、フロントエンドのパフォーマンスチューニングに関する良い書籍が2冊も出ました。 Webフロントエンド ハイパフォーマンス チューニング 作者: 久保田光則出版社/メーカー: 技術評論社発売日: 2017/05/26メディア: 単行(ソフトカバー)この商品を含むブログを見

    とりあえずシュッとパフォーマンスチューニングの目星を付ける - ぱすたけ日記
  • あの人気サービスは、Webサイトを高速化するために何をしているか | Wantedly Engineer Blog

    最近、Webサイトの高速化が話題になっています。 Wantedlyでもサーバーサイドのレスポンス速度はしっかりトラッキングして取り組んでいましたが、フロントエンドはまだまだやれることがあると認識し、悔しさを胸にさっそく動き出しています。 取り組むに当たって、まずは事例を集めていくことから始めました。サーバーサイドの実装を見ることはできないですが、フロントエンドは頑張れば覗けるので、Webサイトの高速化に取り組んでいそうな他のサービスをじっくり観察することで、自分たちのプロダクトに最適な方法を選択できるはずです。 様々な種類のサービスを提供しているサイトを調査してみると、その高速化の手法はサービスごとに結構違っていて、学ぶことが想像以上に多かったので、ブログにまとめてました。同じようにWeb高速化へのモチベーションが高まっている皆さんの参考になれば幸いです。 Netflixまずは、動画ストリ

    あの人気サービスは、Webサイトを高速化するために何をしているか | Wantedly Engineer Blog
  • 阿部寛のサイトを高速化する - Qiita

    ちまたで阿部寛のサイトが早いと話題になってます。 dev.toと阿部寛のホームページどっちが速いですか? dev.toと阿部寛のホームページについてちゃんと計測させてくれ 阿部寛のサイトはベストを尽くしてるのか? それを調べるために、阿部寛のサイトを高速化させてみたいと思います。 目指すべきスピード 最速はローカルのファイルへのアクセスだと思うのでこれを目指したいと思います。 file:///C:/abe_hiroshi/index.html ChromeのDeveloper Toolでレンダリング完了が「173ms」でした。 まぁここまでは無理だな… 阿部寛のサイトはどんなもん? 速度はwebpagetest.orgで測ってみます。 レンダリング完了時間は「359ms」です。はえーな S3でホスティングしてみる サーバーを立てるほどでもないので、S3でWebホスティングしてそこにhtml

    阿部寛のサイトを高速化する - Qiita
  • WebAssemblyはなぜ速いのか | POSTD

    記事はWebAssemblyに関するシリーズの第5回目で、今回のテーマはWebAssemblyが高速な理由です。前の記事をお読みでない方は、 初めから目を通される (訳注:原文リンク)ことをお勧めします。 前回の記事 (訳注:原文リンク)では、プログラミングに WebAssembly あるいはJavaScriptを使うかは二者択一の選択ではないことを説明しました。私たちは、WebAssemblyのみのコードベースを書く開発者が膨大な数になるとは思っていません。 ですので、アプリケーションにWebAssemblyJavaScriptのどちらを使うか選ぶ必要はありません。しかし私たちとしては、開発者がJavaScriptコードの一部をWebAssemblyに置き換えることを期待しています。 例えば、Reactで開発しているチームは、リコンサイラコード(言い換えれば仮想DOM)をWebAss

    WebAssemblyはなぜ速いのか | POSTD