タグ

performanceに関するrochefortのブックマーク (109)

  • Windows がなんか重いときにコマンドで調べる(WMIC PROCESS) - Qiita

    Linux だと ps, top, vmstat, iostat 等々、有名かつ簡単なコマンドが、みんなに共有されていて、「Linuxだと、調べるのも簡単」のようなことがある。 Windows が好きだったり、利用を余儀なくされる方が、Linux の ps にある種の嫉妬を感じることがある。Linux ではあんなに簡単な事が、Windows では、やり方すらわからない。もちろん、Ctrl+Shift+ESC でタスクマネージャーを表示すれば、同じことはできるのだが、なんでもかんでも自動化が叫ばれる昨今において、タスクマネージャーを表示させるぐらいでは、どうにもならない。 この記事では、WMICコマンドでプロセスの調査(WMIC PROCESS, WMIC PATH Win32_PerfFormattedData_PerfProc_Process)、RubyでWMIC同等のことする方法を扱う

    Windows がなんか重いときにコマンドで調べる(WMIC PROCESS) - Qiita
  • MySQLパフォーマンスチューニングのためのインデックスの基礎知識 - 久保清隆のブログ

    仕事MySQLのパフォーマンスチューニングをしていて、インデックスについて分かっていないことが多かったので調べたことをメモ。基的なところから学習しなおした。 MySQLのインデックスは、カラムが特定の値をもつレコードの迅速な検索に使用される。インデックスを使用すれば、数百とか数億ものレコードが入っているテーブルから、一組のレコードを迅速に見つけて取り出すことが可能になる。 しかし、インデックスは速度を改善することもあるが、挿入の邪魔になって遅くなることもある。 インデックスを適切に使うために、まずはインデックスの基概念をおさえる必要がある。 インデックスの概念 インデックスとは インデックスの仕組みを理解するには、まずMySQLがどのようにクエリに応答するかを知る必要がある。 例えば、 SELECT * FROM phone_book WHERE last_name = 'Hoge'

    MySQLパフォーマンスチューニングのためのインデックスの基礎知識 - 久保清隆のブログ
  • 『MySQL初心者に贈るインデックスチューニングのポイントまとめ2014』

    サイバーエージェント公式ブログをご覧の皆さんこんばんは、インフラ&コアテク部の須藤(@strsk)です。普段はAmebaのソーシャルゲーム全般のインフラを見つつ、日語ラップの啓蒙をしながら弊社社員を素材にコラ画像をつくったりしています。好きなAAは麻呂です。 はい、というわけで今回はMySQLインデックスチューニングの基的な流れについてまとめてみました。 ソーシャルゲームは更新も参照もめちゃくちゃ多いです。数秒のレプリケーション遅延も致命的なので適切なテーブル、クエリとインデックス設計が重要です。(何でもそうですけど)インデックスが多くなると更新コストなどが懸念されますが、インデックスが正しく使われていないクエリを放置している方が悪です。そんなこんなで、割と例も偏ったりしてるかもしれませんがあしからず。 前提としてはInnoDBを想定しています。MyISAMはほとんど使っていません。

    『MySQL初心者に贈るインデックスチューニングのポイントまとめ2014』
  • MySQLでクエリチューニングことはじめ

    最近、寒暖の差が激しいですがみなさん体調は崩されていないでしょうか? こんにちわ。モニプラ for Facebookを担当しています高橋です。 サービス開始当初は問題なかったものの稼働が高くなりデータ量が多くなって クエリのパフォーマンスが悪化すること…よくありますよね? 今回はクエリチューニングの基的な手順とケース別に解決方法を解説したいと思います。 クエリチューニングの手順 1.スロークエリログで問題のクエリをあぶり出す まずはどのクエリが問題なのか特定する必要があります。 アプリケーション側でクエリの実行時間を測定し自前でログを出力しておくというのも手ですが、 お手軽にMySQLの設定で一定時間以上掛かったクエリをログに出力しておくことができます。 スロー クエリ ログ(MySQL 5.1 リファレンスマニュアル) mysqldを–log-slow-queriesオプションつきで起

  • ウェブパフォーマンスの基礎とこれから

    ウェブパフォーマンスの基礎と今後の動向について、Web標準周りを中心に解説しています。GREEのMini Tech Talkで発表時の資料です。Read less

    ウェブパフォーマンスの基礎とこれから
  • Railsパフォーマンス基本のキ

    Railsのパフォーマンスについてよくある問題とそれに対して戦いを挑むために必要なもの。

    Railsパフォーマンス基本のキ
  • 1年間で取り組んだProttのパフォーマンスチューニング - console.blog(self);

    Goodpatch CTOの id:sadah です。 これはGoodpatch Advent Calendar 2015の25日目のエントリです。 Prottというサービスではパフォーマンスチューニングのために、Railsアプリケーション/フロントエンドの改善、ミドルウェアのバージョンアップ、SPDYやHTTP/2の導入、オンプレミス環境からAWSへの移行などを行ってきました。 今回はその取り組みの一部をご紹介します。 Slides 10月にGoodpatch Engineer Meetupというイベントをやって、Prottのパフォーマンスチューニングについて話した。 Goodpatch Engineer Meetup Vol.1 - connpass イベントの内容はこちらにまとまっている。 Goodpatch Engineer Meetup Vol.1を開催しました | MEMOPA

    1年間で取り組んだProttのパフォーマンスチューニング - console.blog(self);
  • Chrome Developer Toolsでパフォーマンス計測・改善 - Qiita

    Chrome Developer Toolsを使ったWebページのパフォーマンス計測・改善についての説明です Networkパネル、Timelineパネル、Profilesパネルの使い方を説明してから パフォーマンスの計測・改善について説明していきます Networkパネル Networkパネルはページのリクエストをしてからの通信内容の一覧を表示します 記録方法 左上のRecordボタンを押すと記録が始まる もう一度押すと記録が停止する 必要に応じて、Disable cacheやCapture screenshotsを設定する 表示項目の変更 赤枠で囲んだ部分を右クリックすると こんな感じでメニューが出てくるので表示したい項目をクリックする 項目の一例 Name:リソースの名前 Method:HTTPメソッドの種類 Status:レスポンスのステータスコードとテキスト Type:リソースの

    Chrome Developer Toolsでパフォーマンス計測・改善 - Qiita
  • 第6回 MySQLチューニング(5) パラメタチューニングの基礎 | gihyo.jp

    max_connections 最大接続数は通常システムの要件から算出して行きます。システムとして想定される同時接続数を見積もり、そのうちデータベースまで到達するリクエストの比率、それぞれのデータベースでの処理時間を待ち行列理論に照らして考慮します。データベースに到達する同時リクエスト数が同じだとしても、処理時間が違う場合はデータベース内で同時に実行されている処理の件数も違ってくるため、同時接続数も違ってきます。注意すべき点は、システム開発の早い段階では見積もりの精度が高くないため、ある程度余裕を持たせた設計で始め、かつ段階的に見積もりの精度を高めていくことが求められることです。 接続が切断されるとMySQLサーバ内の接続スレッドも破棄されます。コネクションプーリング機能を使用していない環境では、接続による接続スレッドの生成と切断による切断スレッドの破棄が繰り返され、オーバーヘッドとして無

    第6回 MySQLチューニング(5) パラメタチューニングの基礎 | gihyo.jp
  • [レポート][TA-06]Amazon EBS パフォーマンスベンチマーク 2015 #AWSSummit | DevelopersIO

    AWS Summit Tokyo 2015のTA-06: Tech Deep Dive by Amazon:「Amazon EBS パフォーマンスベンチマーク 2015」のレポートです。 スピーカーはAmazon Data Services Japanの小林 正人氏。 レポート EBSおさらい EBSの容量は1GB単位で。最大16TB。 同一のAZからのみ利用可能。異なるAZで使いたい場合はスナップショットをとって任意のAZに復元する。 EC2に複数のEBSをつけることはできるがひとつのEBSを複数のEC2につけることはできない。 ボリューム内のデータはAZ内で複数のHWにレプリケートされているため、冗長化を考える必要はない。 EBSはEC2のHypervisorと通信するためセキュリティグループをすべて閉じても通信できる。 ボリュームタイプは「汎用SSD(デフォルト)」「プロビジョンドI

    [レポート][TA-06]Amazon EBS パフォーマンスベンチマーク 2015 #AWSSummit | DevelopersIO
  • EC サービスの負荷テスト / EC performance testing

    第1回ペパボテックカンファレンスの発表資料 https://pepabo.connpass.com/event/13208/

    EC サービスの負荷テスト / EC performance testing
  • AngularJSのパフォーマンス改善入門 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? これまでAngularJSでアプリを作ってきた中で、いくつかパフォーマンスの問題に遭遇しました。 それらの問題は、AngularJSの仕組みを十分に理解できていないために、よくないコードを書いてしまって発生しているものでした。 というわけで、AngularJSの内部構造を解説しつつ、パフォーマンスを改善するコードの書き方を紹介したいと思います。 計測できないものは改善できない パフォーマンス問題に取り組むには、ソースコード修正の前後でパフォーマンスを計測し、改善の効果を計測することが重要になります。 というわけでまずはツールの紹介です。

    AngularJSのパフォーマンス改善入門 - Qiita
  • PostgreSQL のパフォーマンスチューニング - Qiita

    PostgreSQL Advent Calendar 2014 の 13日目です。 Advent Calendar を今年もやってみたいと思って、枠が空いていたので飛び込んでみました。 昨日は osapon さんの libpqxx を使ってみたでした。 概要 PostgreSQL のパフォーマンスチューニングは大きく下記に分かれます。 システムチューニング SQL チューニング ここでは Linux 上で動かしていることを前提に、それぞれ説明します。 システムチューニング システムチューニングの概要 システムチューニングとは、OS または PostgreSQL の設定を変更することです。 それぞれ順に説明します。 OS チューニング PostgreSQL では特にメモリ関連でOSパラメータを設定変更すると、高速化効果が得られます。 特に下記のカーネルパラメータに注意します。 vm.dirt

    PostgreSQL のパフォーマンスチューニング - Qiita
  • UITableViewの軽量化 - Qiita

    くろてい君がadvent calendarを作ったので、デザインと密接に関わる軽量化とUIUXに関する記事を書きます。 Kazoo04アドベントカレンダーなのにKazoo04関係無かったわ…。 はじめに UItableViewの軽量化を目的としたエントリです。 ここでの軽量化の定義は数値的に処理速度を高速化することはもちろん、感覚的にストレスを感じさせないUIUXの部分も含みます。 何故ならUITableViewの軽量化は、ユーザーが感じるストレスを軽減することを目的としているからです。 オカルト要素もあるので、変な所があればツッコんでください(汗 大前提 軽量化は基的に -(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ } -(CGF

    UITableViewの軽量化 - Qiita
    rochefort
    rochefort 2015/01/04
    UILabelに限らず、addsubViewするのは大きなコストになります。ではどうすればいいのかといえばdrawrectを使います。
  • Is Rails Slow?

    Slides for Rails Israel 2014 talk "Is Rails Slow?" http://railsisrael2014.events.co.il/

    Is Rails Slow?
  • RubyとJRubyとでパフォーマンスを比較してみた | DevelopersIO

    はじめに 以前Ruby(CRuby)で作成したアプリで、大量データ(数千万件オーバー)のCSVを読み込み、文字列変換をして別ファイルに出力するという処理を実装しました。同じような処理をRubyの別処理系で行った場合、どのようになるのかが気になったので、ちょっと実験してみました。 今回使う処理系や実行マシンについて タイトルにもあるように、通常のRuby(CRuby)とJRubyとで比較しました。Rubyの他の処理系としてはRubiniusなどもありますが、それはまた別の機会にしたいと思います。 RubyJRubyのバージョンについて 今回使用したRubyJRubyのバージョンは以下の通りです。 Ruby - 2.1.0 JRuby - 1.7.9 実行マシンについて 実行マシンについては以下の通りです。なおVirtualBox上のUbuntuで実行しています。 CPU - Core i

    RubyとJRubyとでパフォーマンスを比較してみた | DevelopersIO
  • Rack applicationのプロファイリングにはrack-lineprofが便利 - k0kubun's blog

    RubyKaigi 2014行った。良い発表がいろいろ聞けたんだけど、最近ISUCONに向けてwebアプリのチューニングに興味があったので特にfinal keynoteが興味深かった。 その中で紹介されていたtmm1/rblineprofが行ごとの実行時間を表示してくれるのでとても便利そうだったんだけど、GitHubではpeek/peek-rblineprofというRails用のプラグインでrblineprofを活用しているので、ISUCONでおそらく使用されるであろうsinatraでどうやって使うか考えていた。 kainosnoema/rack-lineprofというgemがその用途に便利そうだったので紹介したい。 使い方 rack-lineprofはRack middlewareで、まず以下のようにuseする必要がある。 require 'rack-lineprof' class My

    Rack applicationのプロファイリングにはrack-lineprofが便利 - k0kubun's blog
    rochefort
    rochefort 2014/09/27
    Sinatraアプリのプロファイリングにはrack-lineprofが便利
  • RubyKaigi 2014 で出会った神ツールのメモ - すがブロ

    RubyKaigi 2014、楽しかったし、学びがあって行って良かったなぁと思いました(小並感すぎる)。 淡々とメモしておくよ benchmark-ips ベンチマークの高機能版。ウォームアップとして何回か走らせてから実行したり、5秒とか100msで何回実行できるかとかを計測できるっぽい synvert フォーマッターらしい。Rubyのバージョンがあがってシンタックスを変更したほうがよかったりする場合に変更してくれる Railsバージョンもあるっぽいけど、このセッション聞いてなかったので詳しくはわからない(あとで調べる) peek-performance_bar View や SQL等でかかった時間を表示するプロファイラ rack-mini-profilerと似てる気がするけど、こっちも試してみたい stackprof Ruby 2.1で追加された rb_profile_frames を使

    RubyKaigi 2014 で出会った神ツールのメモ - すがブロ
    rochefort
    rochefort 2014/09/24
    asciiflow
  • Apacheのチューニングメモ - Qiita

    個人的Apacheチューニングのメモ。 間違いがあったら教えて下さい! prefork 前提 Apacheでは、リクエストはApacheの子サーバプロセスが処理する。 子サーバプロセスは動的にforkで生成されたり、殺されたりする。 が、forkはとても重い処理なので、forkが発生しないように設定するのがよい。 チューニング方針 負荷が高かろうが低かろうが常に一定数のプロセスが動いている状態にする。 preforkの動作 MaxClientsは絶対値。 子プロセス数はこの値を超えない。 (以下正確ではないですが簡単に) Apacheは負荷が高くなってきたら 子プロセスを生成していく アイドル状態の子プロセスはMinSpareServers以上になるよう維持 MaxClients以上の子プロセスは生成しない MinSpareServersよりMaxClientsが強い 負荷が低くなってきた

    Apacheのチューニングメモ - Qiita
  • ふつうのWeb開発者のためのクエリチューニング

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

    ふつうのWeb開発者のためのクエリチューニング