気まぐれブログ

FFXI関係の開発の話とかプレイ日記なんかを 気が向いたときに書き綴っていくブログ

まだまだ高速化

PHPで検索エンジンを開発するにあたって
CPUの負荷というのはかなり重要ですね。

PHPは初めてですがこれほど負荷が掛かるとは思っていませんでした。
ローカルアプリと比較しても数倍は重い気がします。

今まで行ってきた高速化ですが
1.gzipやPHPの高速化ツールを導入
2.INDEXの見直し
3.表示用の中間データを保存

検索エンジン作成時よりも2,3倍高速化しましたが
これでもまだ実用に耐えられるか怪しいほど重いですね。

こうなるとやはり検索時に動的に生成するのをやめて
パッチ処理に変更するしか無さそうです。
ffrecipeなんかは部分的にこの方法取ってる感じですね。

取りあえずはサーチの際にバッファを保存するようにして
参照時は先にバッファを見に行くようにしたいと思います。

バッファの更新タイミングが問題ですがレシピ更新時か
時間単位でバッファを削除することにします。

高速化

検索機能を色々みたところCPUの付加が100%になってました。
Google先生に聞いてみたところIndexを付けるとCPU負荷の軽減に
繋がるとのことだったので付けてみました。

・・・

凄く軽くなってます。今までの重さが嘘のよう!

今まで重かったのはDBの設計が悪かったのねorz

UIが難しい

WEBでUI作るのはWindowsアプリより遥かに時間が掛かりますねぇ。

今回も苦労して作ってみたもののNNでチェックすると
やたら表が小さくなってて作り直し(泣
あれこれ弄って理由を探ったところフォント指定で
小さいフォントを指定していたでした。

NNだとテーブルのサイズまで勝手に弄ってしまうようです。
テーブルサイズは別途指定してるのに勝手に弄るなと!
結局、直接サイズを指定するように直したらIEと同じように表示されました。

タグで記述してたので修正するだけで2,3時間掛かってしまいましたが
これ、スタイルシートで記述してたら1分で直りましたねぇ。

ホント、スタイルシートの偉大さを知りました。
生成するスクリプト量も減るしCGIとは特に相性が良いかも知れません。
今後は出来る限りスタイルシートに移行していきます。

gzipも試してみた

Windowsサーバーでもgzipが使えるか調べてみたところ
Apachが圧縮しているらしいので導入してみました。

とはいっても設定ファイルに3行ほど記述しただけです。
↓こんな感じ。

<Directory "/your-server-root/manual">
 AddOutputFilterByType DEFLATE text/html
</Directory>

で、Apachを再起動してみましたが何も変わりませんね・・・;

少し寂しいですがアクセスが増えたときに
縁の下で貢献してくれると願って良しとしましょう。

ついでに昔使ってたノートPCのメモリを引出しから発掘したので
増設しときました。128MB→512MB(128MBは引出しへ)

メモリもアップして少しはマシになったかな。

高速化

さて、レシピの検索機能も完成したところで
処理の速度が少し気になっていました。

コードの最適化と言う選択もありますが、
とりあえずは手間の掛からない方法で速度アップを試みてみます。


MyZend・・・PHPを最適化するフリーウェア。サーバーにインストールする。
gzip圧縮・・・データを転送する際に圧縮してブラウザに送る手法。


gzipは某掲示板で昔話題になったものですね。
今回は上記のMyZendを試してみました。

サイトからダウンロードしてインストールするだけですが
何となく速くなった気がする・・・?
インストールも簡単だし中々良いですね。
次回はgzipも試してみます。

«  | HOME |  »

FC2Ad

FC2ブログ 紹介予定派遣

プロフィール

[HN] Masashi
[年齢] 29
[出身] 名古屋
[職業] SEプログラマー
[趣味]
 フリーウェアの作成
 FFXI
 アクアリリウム
 小説
 漫画
 ネットサーフィン
[出没する板]
 アクア板
 ネ実板
 サプリ板
 FFXI生産板(したらば)

最近の記事

最近のトラックバック

友達申請フォーム

この人と友達になる

ブログ内検索

RSSフィード

リンク

このブログをリンクに追加する