Tag Archives: server

WordPressチューニング: APC導入

前回の記事でボクのブログが遅い理由はPHPであるところまでは切り分けできた。WordPressのキャッシュ・プラグインを使うのがすぐに思いつくけど、自宅サーバー監視に使っているZabbixもPHPアプリケーションで、こちらの速度もちょっと気になっていたので、まずはすべてのPHPアプリケーションに効果があるAPC (Alternative PHP Cache) を導入することにした。APCはアクセスのたびにPHPコードをコンパイルするのではなく、その中間コードをキャッシュ / 最適化することで高速にしている。

以下では CentOS 5.7 を使用しているが、Red Hat Enterprise Linux (RHEL) / Oracle Linux (OL) / Scientific Linux (SL) でも同様だろう。PHPはCentOSに含まれるパッケージではなく、IUS Community Project のphp53u.rpmを使用している。php53uのインストールについては 複眼中心: CentOS 5.6 で PHP 5.3.6 にアップグレード を参照してほしい。

IUS Community Project もAPCのパッケージを提供しているので、Yumから簡単にインストールできる。IUSを使っていない場合のパッケージ名はphp-pecl-apcになる。

Continue reading WordPressチューニング: APC導入

WordPressチューニング: ボトルネックの調査

1カ月ぶりにブログを更新したら、ページ表示の遅さが気になってしまったので、今まで何もしてこなかったWordPressのパフォーマンス・チューニングを行うことにした。

WordPressチューニングの情報はWebにいろいろあるけれど、ほとんどが「この設定をこうしたらこんなに速くなった!」みたいな話ばかりで、パフォーマンス・エンジニアの端くれとしては「なんでそこがボトルネックだと判断したの?」という視点がないことが気になった。そこで、この記事では原因分析から評価まできちんと記しておこうと思う。ただ、Webアプリケーション・パフォーマンス・チューニングのプロではないので、その辺はお手柔らかに……。

以下ではHTTPサーバーに Apache HTTP Server 2.2.3 + CentOS 5.7、データーベース・サーバーに MySQL Community Edition 5.1.52 + Scientific Linux 6.1 を使っているが、その他の環境でも応用できるだろう。

まず、どこで時間がかかっているのかの切り分けを行おう。Google Chrome 15 のメニュー「ツール > デベロッパー ツール」を開き、Networkタブを表示したら、Shiftキーを押しながら再読み込みボタンを押してWebブラウザーのキャッシュを使わずに再読み込みする。何度か試してみると4秒弱という結果が最頻値のようなので、以下の結果で分析することにした。

Continue reading WordPressチューニング: ボトルネックの調査

自作サーバー構築 組立て編

新しい自宅サーバーを自作するために購入したPCパーツの組み立て方についてまとめておこう。今回購入した Supermicro X7SPA-HF-D525 はCPU直付けなので、「欠けやすいCPUに放熱グリスを適量塗ってヒートシンクを垂直に貼り付ける」という一番アナログな部分がないので比較的簡単だと思う。

SATAデバイス取付け

まずはHDD、Seagate Barracuda Green ST2000DL003 4台とDVDドライブ、Sony Optiarc AD-7260S を Lian Li PC-Q08 に取り付けた。このPCケースはとても素直なので分解しやすいのだが、とても素直なところにビスがあるので(工夫のないところにビスがあるので)、「これを外すのにこれも外さないといけないのか!」というのが若干多い。たとえばDVDドライブベイを外すには、サイドパネルを両側とも外す必要があるため、合計16本のビスを外すことになる。上4個の3.5インチ内蔵ベイはビス1本ではずせるのだが、下2個のPCIボードの空間と交換できるベイは底面4箇所のビスを外す必要があって、マシンをひっくり返さないといけない。ボクの用途ではパーツ交換はめったにしないので問題ないが、頻繁に入れ替える人にはちょっと面倒なケースかな。スイッチ類はしっかりしているし、フロント・ケース・ファンとHDDには防振ゴムがついているのは良いね。
Continue reading 自作サーバー構築 組立て編

CentOS 5 のNFSポートを固定

iptablesなどでファイアウォールを構築するとき、「原則破棄で、使用するポートだけを明示的に開放」というポリシーにしようとするとNFSで困ってしまう。なぜならNFSは古い規格ということもあって、デフォルトでは使用するポートが不定なために「明示的に開放」ということができないのだ。

しかし、最近のNFSはさすがに近代化しており、CentOS 5.2 では /etc/sysconfig/nfs の以下の行のコメントを外すだけで済む。

ファイルを変更したらNFSを再起動しよう。再起動後は、rpcinfoで使用しているポートが確認できる。

Continue reading CentOS 5 のNFSポートを固定

CentOS 4.4 に Postfix 2.2.10 をインストール

CentOS 4.4 で メール・サーバーを構築する第二章。まず、Postfixの基本的な設定を行い、LANからのメールとLANへのメールを通常のSMTPで中継できるようにする。

まずはPostfixをyumからインストールしよう。

Continue reading CentOS 4.4 に Postfix 2.2.10 をインストール