2008年01月13日22:52 カテゴリTips apache - mod_status があるぜよ つ mod_status Apacheの負荷の状況を監視できる、apachetop - Unix的なアレ Unix/Linux系OSの場合で、負荷監視のツールといえばtopが有名ですが、apacheの詳細までは監視することができません。 mod_status - Apache HTTP サーバ 1.Xから存在する由緒あるモジュールです。 設定は、こんな感じ。 LoadModule status_module libexec/mod_status.so AddModule mod_status.c #... <Location /server/status> SetHandler server-status # アクセス制限がいらなければここから.... Order Deny,Allow
ゴール 負荷分散のいくつかの方法に関して理解する mod_proxy_balancerによる負荷分散クラスタが構築できる 基礎知識編 基本的な資料 主にクラスタによる負荷分散の資料。 - Apache モジュール mod_proxy_balancer - mod_proxy_balancerで中?大規模サーバー運用するときの勘所 - cyano あと社外秘資料。 負荷分散? 複数台のサーバにアクセスを分散して、個々のサーバにかかる負荷を減らし、全体的に処理できるアクセスを増やすこと。 以下のようなアプローチがある。 DNSラウンドロビン DNSでひとつのホスト名に複数のIPアドレスを割り当てる方法 シンプル しかしダウンしているホストにもアクセスが振り分けされてしまう 冗長化と併用でなんとかなるかな? 機能ごとにホストを分割 ウェブサーバとDBサーバの分割(基本過ぎるが一応これも負荷分散)
普通の帯域節約術としては、mod_deflateでdeflate圧縮するとか、CSSやJSファイルのHTTPレスポンスヘッダにLast-ModifiedやEtagを追加しておいて、ブラウザがHTTPリクエストヘッダにIf-Modified-SinceやIf-None-Matchを付加するようにし、コンテンツが変更されていなかったら304 Not Modifiedを返すという方法を取るかと思います。 しかし、HTTPサーバーはコンテンツの数だけ304 Not Modifiedを返さないといけないため、その分帯域を消費しますし、またCSSや画像などのパーツの304 Not Modifiedが返ってくるまで、そのパーツのレンダリングが行えないという問題があります(つまり体感速度に影響します)。 今回紹介するのはExpiresヘッダやCache-Control: max-age=31536000を
● 1. 一戸建てタイプ そのアプリ用に専用のマシンを準備できるケース。例えば、アクセス数が少ないβリリース時などは mongrel を直接80ポートで運用することもあるだろう。そして、負荷の増加、またはマルチコアを活かすという次の段階で、cluster 化した mongrel を扱う必要に迫られた場合、このタイプになる。この場合、フロントの仕事はバック(Rails)への割り振りだけだが、そのためにわざわざ Apache2 を持ち出すのは仰々しいと感じるかもしれない。そんな人にお奨めしたいのが Pound サーバだ。いきなり Apache から話が逸れてしまうが、このケースだとリアルでお奨めである。 Pound + mongrel Pound はリバースプロキシ用のWebサーバであり、特化しているだけあって、必要最低限かつ直感的で簡単な設定で済むため、敷居が低いのが魅力だ。それでいて、デジ
さて、サービスがオープンしてしばらく経ってくるとトラフィックも増えて、アプリケーションサーバーの負荷が高くなってくることでしょう。そこで、アプリケーションサーバーを増やすことになります。同じ構成のアプリケーションサーバーをもう一台作って対応します。 ここでふと気づくわけですが、Webサーバーがproxy×1+mod_perl×1の場合は、クライアントから受け付けたリクエストを振り分けて処理するといったことは意識する必要がありませんでした。 しかし、proxy×1+mod_perl×2になると、リクエストを受け取ったリバースproxy側では、どちらのアプリケーションサーバーにリクエストを転送するかを考慮する、つまりロードバランシングをする必要が出てきます。 結論から言うと、ロードバランシングもリバースproxyでやってしまうことができます。 Apache 2.2にはmod_proxy_bal
cacti(カクタイ)とは、サボテンという意味のグラフツール cacti(カクチ)とは、サボテンという意味のグラフツール 読み方を間違っていた MRTGの代替ツール † グラフツールというとMRTG*1が有名ですね。cacti*2もMRTGと同じように、SNMPエージェントが取得した値や、プログラム/スクリプトの出力結果をグラフ化することが出来ます。MRTGよりも優れている点はいくつもありますが、まずはその操作性を体験してみて下さい。ホストの追加やインタフェースの追加など、全てWEBのGUIを通してコンフィグレーション可能なので、慣れるととても楽です。 ↑ RRDToolのGUIフロントエンド † cactiはグラフデータの保存やグラフ生成に、MRTGより高機能なRRDTool*3を使っています。cactiではRRDToolの複雑なコマンドラインオプションと格闘することなく、RRDTool
mod_rewriteでサーバーの負荷が高いときだけリダイレクトする ワタシが働いている会社のホームページは、たまーにYahooのトピックスからリンクされます。 トピックスに載るとそれはもう大量のアクセスが津波のように押し寄せてきて、あっというまにサーバーのリソースを食いつぶしてアクセス不能になってしまいます。 こういうときのために、Contents Delivery Networkによるキャッシングも利用してます。 今までは、リンクされそうになったらmod_rewriteでリダイレクトって方法を使っていました。 でも毎回これをやるのが面倒になってきたので、なんとかならんかなーと思って、RewriteMapに初挑戦してみた。 RewriteMap使えばRewriteCondとかRewriteRuleにプログラムの出力結果を使うことが出来るようになるので、これでWebサーバーのロードアベレー
Ywcafe.net This Page Is Under Construction - Coming Soon! Why am I seeing this 'Under Construction' page? Related Searches: Healthy Weight Loss Best Penny Stocks Cheap Air Tickets Credit Card Application Top Smart Phones Trademark Free Notice Review our Privacy Policy Service Agreement Legal Notice Privacy Policy|Do Not Sell or Share My Personal Information
mod_proxy_balancerで中〜大規模サーバー運用するときの勘所 - (1) mod_proxy_balancerの設定編 Apache2.2から、ロードバランシングをしてくれるmod_proxy_balancer というモジュールが標準添付になりました。 このモジュール、その名前の通り、ApacheレベルでHTTPリクエストをバックエンドのサーバーに振り分けることでロードバランシングをしてくれるモジュールです。 Apacheの公式ドキュメントや試しに入れてみた人のBlogなどは散見されますが、実際の現場で運用している事例というのはまだ無いようです。 そこで、実際にピーク時にover 500 request/secでmod_proxy_balancerなサーバーを運用している経験をふまえ、つまずいた点などを公開していきたいと思います。 まず、mod_proxy_balancerの
Apache 2.2.0 のロードバランス機能(mod_proxy_balancer)を使いこなす Apache 2.2がでました。 mod_dbdとか、mod_proxy_balancerとか気になる新機能てんこ盛りです。 ひげぽんさんの所に 誰か入れてみた人いますか? と有ったのでmod_proxy_balancerを試してみました。 超簡単でした mod_proxyとmod_proxy_balancerを参考にしました。 既に日本語ドキュメント完備! 以下から駆け足で、またセキュリティ的によろしくない設定例が多々あります。 とりあえずこんな設定を仕込んでみました ProxyPass /lb balancer://TEST stickysession=sesid <Proxy balancer://TEST> #1 BalancerMember http://i.yappo.jp lo
チープなDNSラウンドロビンは高価なロードバランサの座を奪い返せるか つっこみどころが満載スギなのは脇においておいて、金をかけないなら、DNSラウンドロビンじゃなくて、せめて、件の記事でも紹介されている Apache 2.2のmod_proxy_balancer か、Apache 2.2じゃなくても使えるreverse proxy系の実装たち、 POUND mod_backhand Perlbal を使うべきでしょう。 んで、「L7ロードバランサ(要はreverse proxy)なんていらねっす。セッション? んなのmemcachedでシェアすりゃいいんじゃん。その方がスケールアウトしやすいしー」という向きには、LinuxでL4のロードバランサするのをオススメでします。まともなL4ロードバランサが手に入るのに、金銭的コストはゼロですってよ、オクサン! Linux Virtual Serve
Apacheをセキュアにするモジュールで「mod_security」というのがあるそうで。いわゆるWeb Application Firewall (WAF)というものに分類される仕組みなのですが、非常に機能が強力。ヘッダ、GET、POST、レスポンスを含むINとOUTの全リクエスト(HTTPS含む)に対してフィルタリング可能。通常では記録されないPOSTのログも記録可能。 で、この機能を使えばトラックバックスパムもサーバ側で始末できるので、PHPなどが動いて判定する前に処理でき、トラックバックスパムによる負荷が軽くなるというわけ。 設定の詳細などは以下の通り。mod_security用のブラックリストもダウンロードできるので設定も簡単です。 公式サイトは以下。 ModSecurity (mod_security) - Open Source Web Application Firewal
というわけで、再び負荷を下げる方法を模索した、戦いの記録。 1.MySQLの設定を変更して高速化 2.Zend Optimizer 3の導入 3.ionCube PHP Acceleratorの導入 4.テンプレートの見直しでクエリーを減らす 5.robots.txtでクロールする間隔を制御する 6.MySQLの設定を負荷を低くする設定に変更 7.キャッシュを有効化する 前回解説した「GIGAZINEのLoadAverageを「27」から「2」へ下げた方法」から約3週間後、6月20日(火)の夜、気がつくと負荷の15分平均は「25」をコンスタントに吐き出すようになり、さらに訪問者は急増、ついに6月28日(水)12時45分、負荷対策の効果がほとんど出ないまま、LoadAverage15分平均は「86」に…。 何か対策が根本的に間違っているのだろうか?それとも、もうGIGAZINEサーバのハード
tracとsvnwebとapache1.3.*でオープンソース開発環境の構築 http://plagger.org/のようなtrac&svn環境を作りたかったので頑張ってみました。 Apache1.3系でtracとsvnwebの構築をしました。 例としてBloxabというプロジェクトを立ち上げる時の構築方法で書いていきます。 ディレクトリとかユーザー名とかは適時書き換える事。 tracの細かい事についてはドキュメントとかを参考に。 svnリポジトリの作成 $ svnadmin create /usr/local/bloxab/repos普通にリポジトリを作ります。 この作成したリポジトリは、apacheとtracdを動かすuid双方で読み書きできるしておく必要があります。 適切なchownとchmodをしておいて下さい。 以上 tracのインストール tracを動かす為の各種ソフトをインス
ここ3日間ぐらい超絶な重さだったのはサーバに物理的トラブルが発生したからではなく、単純に閲覧者数が満員御礼となり、各時間で倍増したためです。LoadAverageはひどいときで15分間の平均値「27.1」程度。瞬間最大風速だともっと高いです……明らかにまずい。 というわけで、Apacheのデフォルト設定で今までは大丈夫だったのですが、ついに高負荷サイト用の設定に変更せざるを得なくなりました。 そのため、実際に行った対処方法は以下の通り。1日30万PV近い動的サイトの高負荷を緩和させる方法として参考になれば幸いです。 まず大前提として、既にDNS逆引きや.htaccessの余計な読み込みなどは停止させていました。下記ページに書いてあることは実行済み。 @IT:Apacheパフォーマンス・チューニングの実践(1/2) この状態で負荷が15分平均で「27」になっていたわけです。 また、LoadA
■ドキュメントキャッシュ機能の見直し メモリキャッシュやディスクキャッシュなど、HTTPコンテンツの動的キャッシュ機能が強化されました。開発バージョン時よりも安定性が向上し、Apache 2.2では実用的なレベルになっています。キャッシュ機能を用いることで、一般的にHTTPサービスの応答性を向上させることができます。 また、Apacheをリバースプロキシサーバとして利用する場合もキャッシュ機能を利用可能です。 ■プロキシ機能によるロードバランシングの実現 プロキシでロードバランス機能を実現するmod_proxy_balancerモジュールが追加されました。HTTPやFTPサービスはもちろん、Apache Tomcatなどのサーブレットコンテナとの通信で使われるAJP13プロトコルのロードバランス機能も提供します。 バランシングの制御は、「リクエスト回数」と「トラフィック量」の2つのアルゴリ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く