2016/07/09、10 に大阪大学 豊中キャンパスで開催された WordCamp Kansai 2016 にて、WordPress サイトのチューニングについて発表しました。 https://twitter.com/digitalcube/status/751693759121731584 発表資料 今回は、PHP(WordPress)エンジニアでなくても何か役立ててもらえるようにチューニングの具体的な手法というよりは、実際に手を動かすエンジニアと意思疎通がスムーズになるように基本的な考え方をメインにお話しました。 「推測するな、計測せよ」という格言があるとおり、チューニングにおいても、まず大事なのは「計測する」ということです。計測せずにやみくもにチューニングを行っているケースを見聞きするので、ここからはじめる内容にしました。 後半は、キャッシュを中心に紹介したのですが、最後の Var
Percona Data Performance Blogの翻訳。Percona CEOのPeter Zaitevによる、MySQLのメモリー使用量をどのように決めるべきか、またそれを決める時に気にするべきことは何かについてのまとめ。 この記事では、最適なMySQLのメモリー使用量を設定するためのベストプラクティスを扱おうと思います。 使用できるメモリーのリソースをどのように使うか正しく設定するのは、MySQLを最適なパフォーマンスでかつ安定して使うために最も重要なことのひとつです。MySQL 5.7では、デフォルトの設定では非常に少ない量のメモリしか使いません。デフォルトのままにしておくのは、最も良くないことのひとつでしょう。しかし、不適切に設定してしまうと、パフォーマンスを更に悪くする(あるいはクラッシュする)ことにもなりかねません。 MySQLのメモリ使用量を設定するにあたっての最初
MySQLコミュニティマネージャのMorgan Tocker氏による、MySQL 5.6をインストールした後にデフォルト値から変更した方がよいパラメータの解説。 数々のデフォルト値の改善によって、過去のバージョンと比べてMySQL 5.6では設定しなくてはならない値がかなり減った。とは言え、変更すべきものについてここで書いておきたい。 InnoDBの設定 innodb_buffer_pool_size - デフォルトは128M。これは、メモリにロードされるデータとインデックスのためにInnoDBがどのくらいメモリを使うかを指定するものなので、設定すべき重要な値だ。MySQLの専用サーバなら、搭載されているメモリの50%から80%が推奨される設定値だ。例えば、64GBのRAMを搭載しているサーバなら、バッファプールは50GB程度にすべきだろう。 innodb_log_file_size -
こんにちは滝澤です。たまにはapacheネタということで一つ。 Apache HTTP ServerのパラメータチューニングではMaxClientsなどのMPM(マルチ プロセッシング モジュール)関連のディレクティブの設定値を調整することが多いです。本記事ではMPM関連のディレクティブのデフォルト値やディレクティブ間の関係を表にまとめたので紹介します。 注意事項 UNIX系OSにおける説明となります。バージョン2.2系および2.4系の両方について説明します。 関係式においてバージョン2.4系の場合はMaxClientsをMaxRequestWorkersに置き換えて読んでください。 ディレクティブ名には公式サイトのリンクを張っています。公式の説明も確認してください。 デフォルトの欄で括弧付きものはそのディレクティブそのものは設定不可ではあるが、内部的に設定されているデフォルト値を示してい
遺伝的アルゴリズム(GA)でサーバの自動チューニングをします。 GAを機械学習を一つと書いてしまいましたが違うようなのでタイトルを変更させて頂きました。 遺伝的アルゴリズムについては↓の動画が分かりやすいです http://www.youtube.com/watch?v=yZJ1V-zv_gU まずは通常の負荷テストができるところまで準備する必要があります。攻撃用のサーバをターゲットと(ネットワーク的に)近い場所に用意してください。負荷を掛ける側(Attacker)にも相応のスペックは必要です。 ストレスツールはコマンドラインから利用出来るものでしたらなんでもかまいません。ab(Apache Bench)などは最初から入っているので手軽ですが、今回は「グリーン破壊」というソフトを利用しました(グリーン破壊のインストール方法は本家サイトに譲ります) 自動チューニングを行うにあたり、ターゲット
KLab Advent Calendar 2011 「DSAS for Social を支える技術」の9日目です。 前回は php を動かしている Apache の手前にリバースプロキシを 置く必要性を解説しました。 今日は、 その前の php のプロセス数を絞る設定と合わせて、実際に Apache で 設定する方法を紹介します。 以降、 php を動かしている Apache の事をアプリサーバー、リバースプロキシ+ 静的ファイル配信を行っている Apache の事をプロキシサーバーと呼びます。 基本設定 まずは基本的な設定のおさらいです。 アプリサーバー 並列数を絞るには MaxClients を設定します。アプリがどれくらいの時間を CPUの処理で使って、どのくらいの時間を外部リソース待ちに使っているかにも よりますが、だいたいCPU数の1.5倍〜2倍くらいが適当だと思います。 Hyp
MySQLやPHPのパフォーマンスを向上させる方法のメモ。 色々な設定があるとは思いますが、ここでは個人的に効果を顕著に感じたMySQLのクエリキャッシュとAPCについて書いています。 本当はPHPやらMySQLそれぞれでベンチ取った方が良いとは思うのですが、この記事では、WordPressを設置して、そのインデックスページに対するApacheBenchのRequests per second(一秒間に処理されたリクエスト数)のみを見て、その結果で比較しています。 ※ApacheBenchはローカルではなく外部のサーバからという微妙な環境で、リクエスト数100、同時リクエスト数10、試行回数はそれぞれ1回という微妙な値でやってます。 まずは、全く未設定な状態での、Requests per second。 実行したコマンドは以下。 ab -n 100 -c 10 テストしたいURI Requ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く