2011-08-11 6 views
1

多くのWebサイトで、サーバー管理者がWebサイト上のライブ統計を表示するために生成されたイメージバナーを提供し始めています。多くのお客様が特定のサーバータイプについて私たちにこれをリクエストしているので、私はそれを調べ始めました。ここでPHPイメージバナーを効率的に生成

私が説明のためにしたモックアップです...

enter image description here

1)基本的に私はこのイメージマイナステンプレートとして白のテキストを持っています。これを行う最も効率的な方法は何でしょうか?私たちはこれらのうちのかなりの数を持つ可能性が最も高いでしょうか?画像を再構築して(クエリーサーバー/新しいイメージを作成する)、X分間ごとにサーバーに照会し、データをデータベースに保存し、X分ごとにイメージを再構築する必要がありますか?

2)その上のテキストは、白いテキストと2ピクセルの黒いストロークのカスタムフォントです。 PHPでストロークエフェクトを使用してカスタムフォントを使用することはできますか?

3)(過去24時間のグラフ上のプレーヤー)を生成するために、私は棒グラフのためにFigure Bを見ていました。私はバナーに背景画像を置き、データベースのデータに基づいて棒グラフをその上に描画しますか?

答えて

0

最も効率的な方法は、最も少ない時間で画像を生成することです。 たとえば、人々が1日に2回しかグラフを見ない場合、これらの画像を生成するためにx分ごとにデータベースを照会するポイントはありません。

パフォーマンスが問題になる場合は、出力イメージをx分キャッシュし、その時間が経過した後にデータベースを再クエリーするだけです。 (データがどのくらい速く変化するかによって異なります) また、メインサーバーから負荷を引き離したい場合は、セカンダリサーバーを使用するための理想的な作業です。

PHPでのフォント処理はかなり制限されています。画像処理のためのgdを見てください。

あなたが言及したように、グラフをレンダリングし、その画像とテキストをデザインした背景画像にオーバーレイすることをお勧めします。

0

#1の場合、X分ごとにクエリを実行する必要があります。実際に変更されたものがあるかどうかを確認することで、スピードアップすることもできます。 PHPを使用して画像をレンダリングすると、コストがかかる(少なくとも私の経験では)、特に頻繁に行う場合は、頻繁に行う頻度を最小限に抑えたいと思うでしょう。