Movatterモバイル変換


[0]ホーム

URL:


はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

タグ

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

タグの絞り込みを解除

チューニングに関するpeketaminのブックマーク (41)

  • Go Optimization Guide

    Patterns andTechniques for Writing High-Performance Applications withGo¶ TheGo App OptimizationGuide is a series of in-depth,technical articles for developers who want to get more performance out of theirGo code without relying on guesswork or cargo cult patterns. If you’rebuilding services that need to handle real load—APIs, backend pipelines, or distributed systems—thisguide focuses on t

    • 500点出す! - ゆーすけべー日記

      「Web Speed Hackathon2022」という「非常に重たいWebアプリをチューニングして、いかに高速にするかを競う競技」があります。 リモート参加で11月1日から27日まで開催されています。 ここで言う「高速」とはCore Web Vitalsのスコアが高いことを言い、Lighthouseのスコアをベースにした500点満点の争いです。 ISUCONのフロントエンド版ですね。 以前にも同じ課題で「学生向け」と「社内(サイバーエージェント)向け」が行われたらしく、まだ500点を出した人はいません。 そこで僕は「満点を出したい」と思い、初日から、いやむしろフライングしていたからその前から頑張ってきました。 そして、先日(17日)、ついに500点満点を出しました! たぶん、レギュレーションはクリアしている、はずです(もし違反してたらすいません…)。 自動で行われる「Visual Re

      500点出す! - ゆーすけべー日記
      peketamin
      peketamin2022/11/21非公開
      素晴らしいドキュメンタリーだった
      • ISUCONの第一人者・藤原俊一郎さんが語る攻略と学び ― 大切なのは「不満のしきい値」を下げること - エンジニアHub|Webエンジニアのキャリアを考える!

        改善し、計測する ― ISUCONとは開発サイクルを回すこと ── 藤原さんがISUCONに参加するきっかけは何でしたか? 藤原 ISUCONの前に「チューニンガソン」というイベントがありました。データベースの割り当てメモリを増やしたり、同時接続数を増やしたりとインフラ側でいろいろチューニングできるコンテストです。ただし、アプリケーションのコードに手を入れることは許されないレギュレーションで、「それだけじゃ面白くないよね」と@tagomorisさんが言い出して始まったのが、ISUCONです。 はっきりとは覚えていないんですが、その案内をたぶんTwitterで見たんでしょうね。先着20チームが参加できるというので、すぐ当時の同僚と組んでエントリーしました。 ── 第1回でいきなり優勝できた勝因は何だったと思いますか? 藤原 参加したのはカヤックに転職して約半年後だったんですが、その当時手がけ

        ISUCONの第一人者・藤原俊一郎さんが語る攻略と学び ― 大切なのは「不満のしきい値」を下げること - エンジニアHub|Webエンジニアのキャリアを考える!
        peketamin
        peketamin2019/03/23非公開
        “競技中には、負荷を見るツールとしてdstatやnetdataを、ログを解析するツールとしてはalpやpt-query-digestを使っています。他には、kataribeを使っている方も多いようです。”
        • 処理が遅い場合の調査

          処理が遅い場合, 問題が, ディスク I/O,CPU能力, ネットワ−ク, メモリ不足, NFS 等のうちどこにあるかが問題になる.(いや,他にもありうるけど) ディスク I/O や ネットワ−クが問題になることが多いと思う. ネットワ−ク関連では, hosts ファイル やDNS に無登録のマシンだったり, NIS 参照に問題が出ていたり, また, 自分自身でなく NFS サ−バが遅いのが原因の例もあった. 機材の故障やケ−ブル不良で, ネットワ−クに大量のエラ−がでているのが 原因のことも多い. 複数のDNS サ−バを参照しているばあい,DNS サ−バの参照順が適切か考え直してみる. 使用する tool vmstat, free,top,netstat,tcpdump 等は普通に使えると思う. 負荷のモニタは procmeter が気に入っている. ネットワ−クの状況は I

          • 漢(オトコ)のコンピュータ道: InnoDBでCOUNT()を扱う際の注意事項あれこれ。

            InnoDBを使うとき、MyISAMと比較して度々やり玉に挙げられるポイントとして「COUNT()が遅い」というものがある。確かにInnoDBにおいて行数を弾き出すのにはテーブルスキャンが必要なのだが、そもそもMyISAMのCOUNT()が速い(テーブルの行数を保持してる)のが特殊なのであって、InnoDBが遅いわけではないのである。とはいえ、高速なCOUNT()については需要が多く、この問題には多くの人取り組んでおられるようだ。しかしながら、COUNT()のチューニングについては未だ語られていない点があるように見受けられるので、今日はCOUNT()のチューニングについて解説しようと思う。 COUNT(*)、COUNT(col)、COUNT(1)の違い基的なことではあるが、COUNT(*)とCOUNT(col)では意味が異なるため、異なる結果が返される場合がある。COUNT(*)はフェッ

            漢(オトコ)のコンピュータ道: InnoDBでCOUNT()を扱う際の注意事項あれこれ。
            peketamin
            peketamin2015/12/30非公開
            "COUNT(*)はフェッチした全ての行をカウントするが、COUNT(col)ではcolがNULLでない値の場合だけカウントされるという違いがある"
            • YappoLogs: なぜ SQL_CALC_FOUND_ROWS や LIMIT OFFSET のページングが良く無いのか

              なぜSQL_CALC_FOUND_ROWS や LIMIT OFFSET のページングが良く無いのか ここ最近の大規模サービス関連したデータページング考です。mysql 5.5.34 で試して記事書いてます。 bigdata テーブルは id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (id) なカラムがある前提です。もちろん InnoDB です。 2014年なんだからCOUNT(*)とかSQL_CALC_FOUND_ROWSとかLIMIT OFFSETのページングはやめようぜ -Togetterまとめが発端にみえるけど、わりと昔から話されてる事なんだけど、「nippondanjiSQL_CALC_FOUND_ROWS」でググっても有用な情報ないし文書化されてないからしとく。 ページング処理で使われがちな機能です。 S

              • MySQLに割り当てるバッファサイズの計算方法 - Qiita

                概要 このへんのを読んで復習がてらに書いてく 計算式 (物理RAMの合計) ― {max_connections x (スレッドバッファによる消費) + グローバルバッファによる消費} > 0 グローバルバッファ + スレッドバッファで消費されるであろうメモリサイズが物理メモリサイズを超えないようにする 物理RAM:r3.2xlargeで61GB グローバルバッファ(サーバ全体に設定されるオプション) すべての接続とクエリに影響するmysqldが獲得できるRAMの量を計算し、バッファサイズの合計がこれを超えないようにする オプション query_cache_size innodb_additional_mem_pool_size innodb_buffer_pool_size innodb_log_buffer_size key_buffer_size 消費メモリ計算式(GB表示) S

                MySQLに割り当てるバッファサイズの計算方法 - Qiita
                • MySQLのEXPLAINを徹底解説!!

                  以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ

                  MySQLのEXPLAINを徹底解説!!
                  • サバフェス! 2015 Spring LT資料

                    私は誰 •  ⽒氏名: 滝澤 隆史  @ttkzw •  所属: 株式会社ハートビーツ ▫  普段はサーバの構築や運⽤用をやっています。 •  チーム名: zzz ▫  メンバー: @ttkzw ⼀一⼈人チーム ▫  hubでギネスを飲みながらサバフェスの申し込み 画⾯面を⾒見見ていて、チーム名を考えていたら、間 違ってPOSTしてしまった。 ▫  開催⽇日近くにチーム名の⼀一覧が公開されるまで、 どのチーム名で申し込んだか思い出せなかった。 2 2015/03/26サバフェス!  2015 Spring 注意事項 • 資料料はIDCフロンティア様主催の「サバフェ ス!  2015Spring」に特化した内容です。 ▫  https://2015spring.serverfesta.info/ •  ここで紹介したパラメータを参考にする場合は その内容を理理解した上でご利利⽤用ください

                    サバフェス! 2015 Spring LT資料
                    • Goでアロケーションに気をつけたコードを書く方法 : DSAS開発者の部屋

                      GoPythonのようなLLと比べると実行速度は速いのですが、GCは特別速いわけではないので、相対的にGCがパフォーマンスに与える影響は大きくなります。 また、Java に比べると、一時オブジェクトなどのために頻繁にヒープアロケーションを行うとGCの停止時間が長くなりがちですが、一方でヒープアロケーションを避けたプログラミングがしやすい言語でもあります。MySQL ドライバのような低レイヤーのライブラリを作る場合、アプリケーション側の性能要件を勝手に決めることができないので、現実的な範囲でアロケーションを減らす努力をするべきです。 ということで、前回の記事 で紹介したプレースホルダ置換を実装するにあたって経験した、アロケーションに気を使ったプログラミングについて、チューニングする手順やコード上のテクニックを紹介したいと思います。 1. まずは正しく動くものを作るgo-sql-driv

                      Goでアロケーションに気をつけたコードを書く方法 : DSAS開発者の部屋
                      • 『楽器用チューナーの謎の印』

                        楽器のチューニングや練習にチューナーをお使いのみなさまへ ディスプレイ上の目盛の半端な位置に妙な印の付いたクロマチック・チューナーがあります。 赤丸で囲んだ印は何でしょうね? 「この範囲に入っていればOK」の目安ですか? いいえ、違います。 よく見ると左右でその位置が微妙に対称ではありませんね。 左の印の位置に比べ、右の印の位置は中央からちょっとだけ遠いように見えます。 話がちょっと脱線しますが、合奏をする場合の音程は中央ピッタリ(0 cent)が正しい音程とは限りません。 じつは、チューナーは多くの場合、十二平均律で表示しています。 (詳しい解説は読み飛ばして結論を急ぎたい方は マークから続きをお読みください。) ある音の高さの2倍の周波数(周波数とは1秒間の振動数)をその1オクターブ上の音と定義します。 比で言うと1:2の関係になりますね。 そして隣り合う半音程(「ド」と「ド#」、「ド

                        『楽器用チューナーの謎の印』
                        • WordPressを100倍速くする! MySQLの調整やnginx proxy cache | KRAY Inc

                          [追記1] 最後で説明しているproxy cacheの設定を修正しました。 [追記2]nginx proxy cacheでキャッシュしない場合の処理を変更しました。 [追記3] スマートフォンや携帯で閲覧した時にキャッシュしない設定を追加しました。 はじめに 大げさな題名ですが、今回はWordPress単体を速くするのではなく、データベースやWebサーバなどの調整、またnginxのproxy cache機能を使って速くする話になります。 サイトの構成によっては、proxy cacheは使えないかもしれませんが、使わなくても5倍程度速くすることはできましたので、参考にしていただければと思います。 今回行うチューニング一覧DBを最適化するプラグインを導入する APCを導入してPHPを速くするMySQLを速くする 重いWordPressプラグインを外すnginx+FastCGIにする W

                          WordPressを100倍速くする! MySQLの調整やnginx proxy cache | KRAY Inc
                          • Nginxを使ったもう一歩進んだWordPressチューニング

                            Nginxを使ったWordPressのチューニングといえば、フロントエンドNginxとバックエンドのNginx(もしくはApache)に分けてproxy cacheを効かせるのが王道です。 さらにWP Super Cacheプラグインを利用してなるべくPHPMySQLにアクセスさせないようにすると、手軽で絶大なパフォーマンスアップが可能です。 今回はそこからもう一歩進めたチューニングについて書きたいと思います。 二段階層を廃したシンプルな構成 まずは、図をご覧ください。 前述の王道チューニングの構成はA図となります。 proxy cacheはNginxがバックエンドのサーバーに処理を回し、返ってきたレスポンスをキャッシュして、Nginx自身がキャッシュを返すことでパフォーマンスを上げる仕組みです。 A図-1がキャッシュの無いアクセス、A図-2がキャッシュが効いているアクセスを表していま

                            Nginxを使ったもう一歩進んだWordPressチューニング
                            • 開発者のためのSQLパフォーマンスの全て

                              前書き - インデックスの作成はなぜ開発者のタスクなのか インデックスの 内部構造 - インデックスは何に似ているか インデックス リーフノード - 二重連結リスト 検索 ツリー(Bツリー) - バランス木 遅いインデックス パートI - インデックスを遅くする2つの原因 where 句 - 検索のパフォーマンスを改善するためにインデックスを作成 等価 演算子 - 一致するキーの検索 プライマリキー - インデックスの使い方を確認 複合インデックス - 複数列に対するインデックス 遅いインデックス パートII - 前の問題点が再び 関数 - where句の 中での関数 大文字・小文字を区別する 検索 - UPPERと LOWER ユーザ定義 関数 - 関数インデックスの制限 インデックスの作り過ぎ - 冗長性の排除法 パラメータ化 クエリ -セキュリティとパフォーマンスのために 範囲 検

                              開発者のためのSQLパフォーマンスの全て
                              • SQLデータベースに正しインデックスを作るのは 誰の役割?

                                SQLのパフォーマンス問題は、SQLそのものと同じぐらいの歴史がある―― ある人は、SQLはそもそも遅いものだとすら言うかもしれません。これは、SQL歴史が始まった頃は正しかったかもしれませんが、今となっては全く 当てはまらないでしょう。にもかかわらず、SQLのパフォーマンス問題は今も一般的でよくあることです。どうしてそうなってしまうのでしょうか?SQL言語は、恐らく最も成功した第4世代言語(4GL)でしょう。その最大の利点は、「何を」と「どのように」 を分離できることです。SQL文は、どのようにそれを実行するかを記述せずに、単純に 何を必要としているかのみの記述になっています。以下のような例を考えてみましょう。 SELECT date_of_birth FROMemployees WHERE last_name = 'WINAND'SQLのクエリは、データを要求する英語の文として読

                                SQLデータベースに正しインデックスを作るのは 誰の役割?
                                • Pycon2014 django performance

                                  Djangoアプリケーションチューニング、Djangoアプリケーションのチューニング方法、負荷測定方法を紹介します。PyConJP2014での発表資料です。 発表の動画はこちら http://youtu.be/1aLAZG4Udg0

                                  Pycon2014 django performance
                                  • 『TOTEC2014 インフラチューニング(チューニンガソン)で優勝したはなし』

                                    TOTEC2014 インフラチューニング(チューニンガソン)で優勝したはなし |サイバーエージェント 公式エンジニアブログ インフラ&コアテク部の仲山です。 「TOTEC2014 インフラチューニング」という社内チューニンガソンイベントで優勝をいただいたので、技術ブログを書くことになりました。 TOTECは、サイバーエージェントグループ内の技術者コンテストで、 インフラ、フロントエンド、サーバサイドの分野ごとに、 「チューニンガソン」と呼ばれる形式でその速度向上を競い合います。 今回の「インフラチューニング」では、 参加者はソフトウェアのソースコードを改変できないため、 あくまでミドルウェア等の変更、チューニングや、サーバ構成の最適化のみで闘います。 主なレギュレーション 運営があらかじめ用意したMediaWikiの応答速度を競う。 ソースコードの変更は禁止だが、設定ファイルの編集は

                                    『TOTEC2014 インフラチューニング(チューニンガソン)で優勝したはなし』
                                    • ふつうのWeb開発者のためのクエリチューニング

                                      Your browser doesn't support the features required by impress.js, so you are presented with asimplified version of this presentation. For the best experience please use the latestChrome or Safari browser. Firefox 10 (to be released soon) will also handleit.

                                      ふつうのWeb開発者のためのクエリチューニング
                                      • Railsアプリつくった - ✘╹◡╹✘

                                        最近APIサーバ用途でRailsアプリを1個つくったので振り返る。 概要 接続元はiOSやAndroidアプリとか、Webブラウザとか、別のWebアプリケーションとか。1ホストあたり秒間数百リクエスト、平均応答時間10msぐらい。Rails 4.1.0.rc2、Unicorn、Nginxを使ってる。正直Railsは全部入りで重いイメージがあったので何となく平均50ms以内程度であれば良いところだろうと思ってたけど、意外と速い。多分そもそもサーバの性能が良いんだと思う。実装時に気を付けたことは普段の開発と特に変わりない。いつもは大勢でワイワイ開発するものに少し手を加えるということが多いんだけど、今回は珍しく自分一人でつくったから目が行き届いてたのかもしれない。DBへの問合せの効率に気を配るとか、Rubyでの処理の無駄を省くとか、アプリケーションのプロセスに無駄なコードを読み込ませないとか、計

                                        Railsアプリつくった - ✘╹◡╹✘
                                        • MySQLチューニング

                                          pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)

                                          MySQLチューニング

                                          お知らせ

                                          公式Twitter

                                          • @HatenaBookmark

                                            リリース、障害情報などのサービスのお知らせ

                                          • @hatebu

                                            最新の人気エントリーの配信

                                          処理を実行中です

                                          キーボードショートカット一覧

                                          j次のブックマーク

                                          k前のブックマーク

                                          lあとで読む

                                          eコメント一覧を開く

                                          oページを開く

                                          はてなブックマーク

                                          公式Twitter

                                          はてなのサービス

                                          • App Storeからダウンロード
                                          • Google Playで手に入れよう
                                          Copyright © 2005-2025Hatena. All Rights Reserved.
                                          設定を変更しましたx

                                          [8]ページ先頭

                                          ©2009-2025 Movatter.jp