タグ

performance-tuningに関するnak2kのブックマーク (36)

  • 快適スケールアウト生活への第一歩。SPIDERストレージエンジンを使ってみよう!

    先月、Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジンというエントリでSPIDERストレージエンジンによるスケールアウトが凄い!という話を書いた。SPIDERストレージエンジンは凄いヤツだが、ノウハウがあまりウェブ上で見つからない。唯一見つかる日語の記事は、ウノウラボによる「国産MySQLストレージエンジン「Spider」の作者、斯波健徳氏に聞く 」だけである。SPIDERストレージエンジンは斯波氏による単独の作品であるため、斯波氏は開発だけで手いっぱいであり、使い方の紹介記事を書くことまでは手が回らないのであろう。こんな凄いストレージエンジンをドキュメントが足りないせいで使って貰えないなんて勿体ない!! というわけで、今日はSPIDERストレージエンジンの基的な使い方について紹介する。少し長いエントリであるが、最後までお付き

    快適スケールアウト生活への第一歩。SPIDERストレージエンジンを使ってみよう!
  • Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン

    Webサービスでは、世界中からのトラフィックを捌く必要があるため、いくらチューニングしようとも一台のRDBMSでは捌ききることが出来ないのが常だ。MySQLは最初からマスター・スレーブ型のレプリケーション機能が搭載されており、スレーブをたくさんぶら下げることによって参照の負荷をスレーブに割り振るというスケールアウトによってその問題に対処してきた。スレーブによるスケールアウトは、参照(=PV)が多いWebサイトと非常に相性が良く、幾多のWebサイトにおいて実績を作ってきているし、まだまだ利用されている。 しかしながら、サイトのトラフィックが劇的に増加してくるようになると、レプリケーションによる負荷分散では追いつかなくなってきた。そこで人々がとった選択肢は、memcachedを利用することである。memcachedはインメモリ型の高速なKVSであり、参照・更新性能はMySQLより格段に高い。M

    Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン
  • Androidアプリで高速描画チューニングをするコツ

    Androidアプリで高速描画チューニングをするコツ:インタビュー特集:Google直伝!(1)(2/3 ページ) T-Mobile G1の仕組みを整理 高速描画を実現するための仕組みを理解するには、G1のハードウェアの仕組みをある程度理解する必要がある。 アプリケーションが動作するための計算や演算を行うのは、CPUだ。G1のアプリケーションが動作するCPUにはARM 11(クロック数は528MHz)が搭載されている。通常は、ここで表示する内容を生成して、LCDのバッファへ転送して表示する。 CPUの演算速度はそれなりに高速なので、すべてソフトウェアで演算する手法もある。しかし、G1は3Dの処理(OpenGL ES)を行う専用ハードウェア(GPU)を持っているため、これを使うことでソフトウェアでの処理に比べて高速かつ、省電力で描画の演算ができる。 PCで動作するAndroid SDKのエミ

    Androidアプリで高速描画チューニングをするコツ
  • JavaScriptを高速化する31のチェックリスト | エンタープライズ | マイコミジャーナル

    Is your JavaScript SLOW JavaScript? Amy Hoy氏およびThomas Fuchs氏がIs your JavaScript SLOW JavaScript?において、JavaScriptアプリケーションのパフォーマンスをチェックするためのチェックリスト [PDF]を公開している。印刷して利用できるように工夫されたチェックリストで、31のチェック項目がある。紹介されているチェック項目は次のとおり。 scriptタグは正しい位置に記述されているか DOM MonsterブックマークレットでDOMを分析しパフォーマンス問題を明かにする キャッシュヘッダを正しい状態にする 結合、インライン、事前キャッシュ ミニファイ、Gzip圧縮 Smush、CSS Script、Favicon フレームワークの確認 ラナウェイタイマの管理 DOMコード効率の最大化 ノードセレ

  • MySQL とメモリに関するまとめ - LukeSilvia’s diary

    前回のエントリーデータベースを用いたセッションデータ管理についてで、MySQL とメモリの関係について良く分からない部分があると書きました。 実はここに関する理解はかなり曖昧な部分があって、調査して追記します。とくにメモリ利用量について。mysqld のプロセスが利用できるメモリの上限が、32bit OS の場合は3G 程度ということは、innodb_buffer_pool_size もこの制限を受け、これについての警告が、先に紹介したリファレンスマニュアルのものという理解だけどいいのだろうかというのが1つ。 2 つ目は、この理解があっているとすると、4G 以上のクラスのメモリをつんだサーバをDB サーバとして利用する場合、64 bit OS でないとリソースの有効活用ができないか。それとも、先に書いたとおり、OS レベルのキャッシュとして利用できるから、結果としてデータファイルを読み込む

    MySQL とメモリに関するまとめ - LukeSilvia’s diary
  • Mozilla Re-Mix: Firefoxのデータベースを最適化して高速化を図るアドオン「SQLite Optimizer」

    Firefox 3では、履歴やブックマーク、クッキーなどの他、一部アドオンの利用データもSQLite データベースで管理しています。 日々の利用により、このデータベースが大きくなってくると、Firefoxの起動に時間がかかったり、動作が緩慢になってくるということなどが考えられます。 このようなとき、データベースの最適化をすることによって、Firefoxの動作を軽くするという方法がブログなどにもよく書かれていますが、これを実行するには「SQLite Manager」というアドオンをFirefoxにインストールして起動し、お使いのプロファイルフォルダから該当データベースを探して[Reindex]を行うという作業が必要となり、初心者にはちょっと実行しにくいものがあります。 <参考記事> firefox 3が遅くなった→ SQLite reindexで解決&高速化 via しおそると Firefo

  • facebookでのAPCの設定 - おぎろぐはてブロ

    php|tek 2007で発表された、facebookの中の人のAPCの設定についての話です。軽く中身を説明します。 apc@facebook (PDF) apc@facebook (PDF) 2007/09/21 追記 サイトの構成が変わって、スライドがデッドリンクになっていたため差し替えました。また、今月開催されたphp|works 2007での講演もアップされています。こちらのが読みやすくなっている部分があるので、こちらを参照したほうがいいかも。 apc@facebook (PDF) in phpworks2007 http://tekrat.com/talks 内容 LAMP構成で、そしてAPCを使ってます Facebookのprofile.phpの表示を例にあげると、ノーマルのPHPに比較して、FacebookのチューンしたAPC設定では秒間リクエスト数が12倍に! ちょ、、それ

    facebookでのAPCの設定 - おぎろぐはてブロ
  • 漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法

    ちょっとキャッチ−なタイトルをつけてしまったが、今日は独断と偏見でMySQLを高速化する方法を10個紹介しよう。MySQLサーバをチューニングするときや初期導入する場合などに参考にしてもらいたい。 1. バッファを増やす、または減らす チューニングの基中の基であるが、適切なバッファサイズを設定することはパフォーマンスチューニングの要である。主なバッファは次の通り。 innodb_buffer_pool_size・・・InnoDBだけを利用する場合は空きメモリの7〜8割程度を割り当てる最も重要なバッファである。余談だが、実際にはここで割り当てた値の5〜10%ぐらいを多めにメモリを使うので注意が必要だ。 key_buffer_size・・・MyISAMだけを利用する場合は、空きメモリの3割程度を割り当てるといい。残りはファイルシステムのキャッシュ用に残しておこう。 sort_buffer_

    漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法
  • PHPスクリプトの遅い部分を簡単に見つける方法

    extension=xdebug.so xdebug.profiler_enable = 1 xdebug.profiler_output_dir = /tmp と設定して、apacheのリロードを行えばXdebugが動作します。 これで、あとは、ブラウザで調査したいページにアクセスすれば、 /tmp/ 以下にプロファイルデータが作成されていきます。 次にプロファイルデータの閲覧の為に、 http://sourceforge.net/projects/wincachegrind/からWinCacheGrindをダウンロードしてwindowsマシンにインストールします。 あとは、WinCacheGrindで作成されたファイルを取り込めば、関数ごとの 実行時間をたどりながら確認することができます。 ※WordPress2.7.1日語版インストール直後のTOPページで試してみた場合です。 We

    PHPスクリプトの遅い部分を簡単に見つける方法
  • はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記

    はじめに 「新はてなブックマーク」になったということで、とっても便利になったのですが、ブックマーク一覧ページ*1が若干 JavaScript に時間が掛かっているみたいです。 というわけで 調査してみたいと思います。調査して、改善できそうなところは後で纏めて「はてなアイデア」にでも登録しようと思います。 この日記は調査しながら、過程を書いていくつもりです。 準備 まずは、人のサイトの JavaScript を書き換えて試してみるための環境を作ります。 作業用ディレクトリを作る とりあえず、ホームに HatenaJS というディレクトリを作ります。 $ mkdir HatenaJS $ cd HatenaJS CocProxy をダウンロードしてくる 以下から CocProxy というツールをダウンロードしてきます。 http://coderepos.org/share/wiki/CocPr

    はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記
  • はてなブックマークが重い件について、Page Detailerというツールを使って調べてみる - VTuberになったプログラマーの魂の残滓

    JavaScriptの部分は というわけでid:amachangに任せましょう。 というわけでそれ以外の部分でいったいどこが重いのか 何が重いの?ということで重たい箇所を分析していきましょう。 IBM PageDetailer 解析ツールとしてIBM PageDtailerを利用します。 alphaWorks Community 解説するよりも見てもらうほうが早いと思うのでさっそく使ってみるよ。 ちなみに上記ソフトのダウンロードにはIBMアカウント(無料)が必要なので、使いたい人は登録しよう! http://b.hatena.ne.jp/HolyGrail/ の結果 こんな感じのグラフが出てきます。 では、詳細を見てみましょう。 このグラフですが、長い部分が http://b.hatena.ne.jp/HolyGrail/ のHTMLそのもののロード時間になっています。 内訳としては 濃い

    はてなブックマークが重い件について、Page Detailerというツールを使って調べてみる - VTuberになったプログラマーの魂の残滓
  • Re: はてなブックマークのコンテンツの JavaScript を高速化する - つれずれなるままに…

    Reply to はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記 「重い箇所2:HatenaStar.js 1738 行目」で取り上げられていた Hatena.Star.Button.reateButton ですが、Flyweight パターンのアイデアと Element.cloneNode() を利用したところ、手元の環境(WinXP,Fx3.0)で7.7倍速くなったのでお伝えしておきます。 修正コード /* Hatena.Star.Button */ Hatena.Star.Button = new Ten.Class({ createdButton: {}, createButton: function(args) { var src = args["src"]; if (!this.createdButton[src]) { var newimg

  • 堀愚霊瑠の指摘で気付いた、はてなスターの静的ファイルとか想像以上にアレな件 : にぽたん研究所

    id:HolyGrail (堀愚霊瑠氏) の「はてなブックマークが重い件について、Page Detailerというツールを使って調べてみる - id:HolyGrailとid:HoryGrailの区別がつかない日記」とか見てて、色々問題点が指摘されてて、うん、まぁそうだねーとか色々と思いつつ、YSlow は、有用なツールである反面、減点基準が必ずしも全てのサイトに適合しないというか、ハッキリ言ってしまえば Yahoo! Inc. 基準すぎるので、鵜呑みにし過ぎるのもどうかなーとか思ってた。 で、気になったのは 13. Configure ETags ETagsっていうのはサーバ上のファイルとブラウザのキャッシュが一致しているかどうかを検証するためのものなのですが、正しく利用できていないのであれば、ETagsは無駄なだけなので取り除いてやりましょう、という項目です。 http://s.hat

    堀愚霊瑠の指摘で気付いた、はてなスターの静的ファイルとか想像以上にアレな件 : にぽたん研究所
  • LinuxのファイルI/Oチューニングに使える「Iotop」 - GIGAZINE

    ファイルI/Oがパフォーマンスのボトルネックになっていることはなんとなくわかるが、具体的にはどうなっているのかを知りたい場合、通常はvmstatやiostatなどを使うわけですが、この「Iotop」を使うと、いわゆるtopコマンドのような感じで表示してくれるので、ケースによってはかなり状況を把握しやすくなり、非常に役立ちます。 詳細は以下。 Iotop's homepage http://guichaz.free.fr/iotop/ 中身はPythonで書かれており、Python2.5以上とLinuxのカーネル2.6.20以上で動作します。 画面はこんな感じ あと、ディスクI/O関連は以下のページも参考になります。 Linux I/O のお話 write 編 - naoyaのはてなダイアリー Linuxチューニング 第2部第3回 ハード・ディスクをチューニング(その1):ITpro

    LinuxのファイルI/Oチューニングに使える「Iotop」 - GIGAZINE
  • MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」

    サーバのチューニングをする上でかなりやっかいなのがデータベース系。特にログファイルの量が膨大になると後から中身を見て問題を分析するのも一苦労という場合が。そんなときにこのMySQLtopコマンド「mytop」を使えば一体何が起きているのかがすぐにわかるので問題点の把握が容易になります。ベンチマークするときに併用すればかなり効率が良くなるのではないかと。 インストールと使い方は以下の通り。 まずは「mytop」から。以下が公式サイト。 mytop - a top clone for MySQL http://jeremy.zawodny.com/mysql/mytop/ マニュアルは以下にあります。 mytop - display MySQL server performance info like `top' インストールするにはSSHなどを使ってrootでログイン後、wgetでファイル

    MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」
  • ウノウラボ Unoh Labs: データキャッシュを利用したウェブサーバの高速化

    こんにちは satoです Aapcheでproxyサーバを利用している場合、頻繁にアクセスされて、なおかつ 更新の少ないデータ、(フォト蔵や mixiでいう マイピクチャーなど) は proxyサーバにキャッシュするとレスポンスが良くなります。 mod_proxy_balancerと mod_disk_cache を利用して、proxyサーバに データをキャッシュする手順を紹介します <VirtualHost * *:443> ServerName example.com ProxyPass /img ! # cssやイメージファイルは proxyしないでローカル参照 ProxyPass /css ! <Proxy balancer://web> AddOutputFilterByType DEFLATE text/html text/css application/x-j

  • DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!

    MySQLのチューニングにおいて非常に重要となるメモリ(バッファ)関連のパラメータについて、 チューニングのポイント DSASのとあるDBサーバ(実メモリ4GB)の実際の設定値 をまとめてみます。 また、必要メモリの総量の計算や限界値を越えてないかチェックしてくれるスクリプトも紹介します。 是非、参考にしてみてください! まず最初に注意点を。 バッファには2つのタイプがあります。 グローバルバッファ スレッドバッファ グローバルバッファはmysqld全体でそのバッファが1つだけ確保されるもので、 これに対し、 スレッドバッファはスレッド(コネクション)ごとに確保されるものです。 チューニングの際にはグローバル/スレッドの違いを意識するようにしましょう。 なぜなら、スレッドバッファに多くのメモリを割り当てると、コネクションが増えたとたんにアッという間にメモリ不足になってしまうからです。 in

    DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!
  • mysql を高速化したいときに読むメモ (TechKnowledge)

    給料の振込口座として三井住友銀行に口座を持っています。自動支払いサービスを使用して光熱費等の公共料金の支払いをしていますが、先日それらの内の一つを失念してたことに気づきました。口座を確認した時にはすでに引き落としが完了していたため、手元の資金が心細くなった状態で数日を過ごさなければなりません。三井住友銀行で即日キャッシングが可能であれば、是非利用したいのですが。 運が良ければ、三井住友銀行の即日キャッシングは可能 三井住友銀行の特徴はまずクレジットカード会社との連携したサービスが魅力的なことがあげられます。キャッシングでは銀行カードローンですから、何より安い金利が大きい利点になります。概ね銀行系の審査に必要な時間は長くなるようですが、三井住友銀行ではカード発行が当日に行なってくれます。 三井住友銀行は即日キャッシングができるかと言うと微妙なことになります。申込から審査結果の連絡までは、土日

  • http://www.typemiss.net/node/52

  • hail2u.net - Weblog - 圧縮フォルダを使わないようにするとエクスプローラがキビキビ動く

    Windows XPの圧縮フォルダというほとんどの人が使っていないと思われる機能(私見)を解除したら、エクスプローラがキビキビ動くようになった気がする。というようなことを某所で言ったら、試した人が「すげぇかるくなった kyo++」とかインクリメントしてくれたので、エントリにしておこうとか。 圧縮フォルダ機能の解除の方法は、コマンド プロンプトで、 regsvr32 /u zipfldr.dll regsvr32 /u cabview.dll と、入力してやるだけ。多分再起動は必要ない。 これにより特にエクスプローラのツリー表示なんかが高速化する気がする。エクスプローラ以外ではファイラーっぽいので特に高速化する感じで、僕の環境ではACDSeeのツリー表示がとんでもなく高速化した。 また、デフォルトの検索機能が圧縮フォルダ内を探さなくなるため高速化し、いつまでたっても終わらないということは少な

    hail2u.net - Weblog - 圧縮フォルダを使わないようにするとエクスプローラがキビキビ動く
    nak2k
    nak2k 2006/09/11
    ファイル数多いフォルダやらで確実にききますね。LZHフォルダ入れてる人は regsvr32 /u lzhfldr.dll も。(それかアンインスト)