タグ

Apacheに関するkwryのブックマーク (148)

  • Apacheとかforkしたプロセスのメモリチューニングに関するメモとスクリプト | hirobanex.net

    forkしたプロセスのメモリチューニングのための調査ツール naoyaさんのshared_memory_size.plっていうのがあって、このブログの記事の内容とか後関連書籍の内容が文系プログラマ的にとても参考になってマジ感謝なんですが、apacheのプロセスチェックするときだとsudoつけて実行するから、いちいちSystem perlLinux::Smapsいれなきゃいけないくて、しかもぼくのubuntu環境だと最新版の0.12の06-VmFlags.tってテストがこけてキモイし、別にLinux::Smaps使わなくてもいいやと思ったので、スクリプト化しました。 あと、共有していない部分のメモリ使用量もいちいち掛け算するのだるいので、右に出すことにした。 #!/usr/bin/env perl use strict; use warnings; @ARGV or die "usage:

    kwry
    kwry 2013/11/04
  • アプリからの情報を秘密裏にApacheのログに書き出す方法

    Response Header の値を任意の環境変数にコピーして、Header から削除する patchRead less

    アプリからの情報を秘密裏にApacheのログに書き出す方法
    kwry
    kwry 2013/03/11
  • apachectl -k restart は stop && start じゃないので気をつけましょう - blog.nomadscafe.jp

    Apacheを起動するときに使う事もある apachectl の -k restart は stop && start ではないので注意しましょう。 ServerLimitやThreadLimitなどの一部の設定は、restart では適用されず、stop && start が必要になります。 apachectl は実はshellscriptで出来ています。中をのぞくと #!/bin/sh .. HTTPD='../httpd' .. start|stop|restart|graceful|graceful-stop) $HTTPD -k $ARGV ERROR=$? ;; と書かれています。restartはhttpdコマンドにそのまま渡されるようです。 そこでhttpdコマンドのドキュメントを読むと詳しくは Stopping Apache httpd http://httpd.apach

    kwry
    kwry 2013/02/02
  • combinedに代わるオレ流ログフォーマット - (ひ)メモ

    こんにちは、combinedログ撲滅委員会のひろせです。 ApacheのcombinedやNginxのデフォルトのlog_formatは、機械処理(日付でのソートやパース)がしづらい上に、人の目にもあまり見やすいフォーマットとはいえないと思っています。 なので自宅のサーバーでは、 日付は ISO8601 にする sortコマンドとかで簡単にそぉーっとソートできるようになる 日付、レスポンスコード、所要時間とか固定長的なフィールドは左に寄せる URLとかUAとか可変長で長いのは右に寄せる リクエスト(%r)も右に寄せた方ががいいような気がしてきた。。。 数値だけだとわかりづらいのでなんとなくわかるようにフィールド名も添える フィールド名を長くするとわかりやすくなる反面、ログサイズが大きくなるので注意 という観点で次のようなログフォーマットにしています、 # Apache LogFormat

    combinedに代わるオレ流ログフォーマット - (ひ)メモ
  • Apacheのサンプルログを生成し続けるスクリプト

    最新の記事はこちらです。 Fluentdのテストをする過程で欲しかったので、Apacheのログを生成し続けるスクリプトを書きました。 と言っても生成部分はTreasureDataのスクリプトを丸ぱくりで流量制限をするオプションを追加して延々と出力するようにしただけです。 frsyuki++。 手元でサクッとproductionで確認できる人はうらやましす。 使い方は以下のような感じです。詳細はREADMEを見てください。 ruby sample_apache_gen.rb [--rate=0] [--limit=0] [--rotate=0] [--progress] [--json] [outfile] --rate 毎秒何レコード生成するかの指定。0以下は制限無し。 --limit 最大何件出力するか。0以下は延々と出力し続ける。 --rotate ローテーションの間隔。単位は秒指定。

    Apacheのサンプルログを生成し続けるスクリプト
  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

  • smalllightでのエンジンの選択の仕方 (ヒントオプション追加) – cat /dev/random > /dev/null &

    small lightシリーズ [1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる [2] いろいろsmalllightを使って動的に画像をリサイズしてみる [3] smalllightでのエンジンの選択の仕方 [4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加) 先日の記事を書いた時点では気づいていなかったのですがsmalllightはJPEGのリサイズを高速化するパラメータがありました。 ヒントオプションというものです。早速再度有効にしてとってみました。 テスト画像 JPEG 6400×4800(17.7MB) -> 640×480 ヒントオプションなし dw=640,dh=480,cw=640,ch=480 ヒントオプションあり dw=640,dh=480,cw=640,ch=480,jpeghint=y imlib2(libjpe

  • smalllightでのエンジンの選択の仕方 – cat /dev/random > /dev/null &

    これだけ見ればimagemagickでもいいじゃん!ということになりますが 速さはどうなのでしょうか? 1024×768のjpgとpngを480×480に収まるサイズ(dw=480,dh=480,da=l)にリサイズした際のパフォーマンスです (gifはimagemagickを使ってください) ファイルサイズはjpgが202KBでPNGは69.6KBです smalllightはレスポンスヘッダに各処理にかかった時間を出力する機能がありこれを使い測定しました。(以下のような出力) X-SmallLight-Description: transfer=19ms, modify image=35ms (load=21ms, scale=7ms, save=6ms) transferはエンジンによって有意な差異が見られなかったのでmodifyをサマライズしましたl. 測定する際は、最初に5回アクセ

  • いろいろsmalllightを使って動的に画像をリサイズしてみる – cat /dev/random > /dev/null &

    small lightシリーズ [1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる [2] いろいろsmalllightを使って動的に画像をリサイズしてみる [3] smalllightでのエンジンの選択の仕方 [4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加) 先ほど書いた「ライブドアのsmalllightを使って動的に画像をリサイズしてみる」では とりあえず入れてみて、リサイズしてみた!といった感じでしたが 僕が触ってみてこうしたら楽だとかの設定例を上げてみます。 ケース1 拡張子混在で使う 例えばjpg,gif,pngと混在していた場合、わざわざ設定で以下のように書くのは馬鹿らしいです。 RewriteRule ^/thumb_1/(.*\.jpg)$ /small_light(dw=70,dh=70,cw=70,ch=70,e=

    いろいろsmalllightを使って動的に画像をリサイズしてみる – cat /dev/random > /dev/null &
  • ライブドアのsmalllightを使って動的に画像をリサイズしてみる – cat /dev/random > /dev/null &

    small lightシリーズ [1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる [2] いろいろsmalllightを使って動的に画像をリサイズしてみる [3] smalllightでのエンジンの選択の仕方 [4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加) 最近、動的に画像をリサイズするのが流行っているようです。 ゆめみラボのmod_ktaiクックパッドのmod_tofu、livedoorラボEDGEのsmall_lightなどいろいろありますが 今回small_lightを使ってみたので記事を書いてみます。 ついでに速いと噂のlibjpeg-turboも入れてみます。 smalllightとは 公式を見るのが一番早いとは思うので一度見てみてください。(→smalllight) 僕がsmalllightで特にいいなぁと思ったのが

    ライブドアのsmalllightを使って動的に画像をリサイズしてみる – cat /dev/random > /dev/null &
  • 株式会社スタイルズ

    AWSアドバンスドコンサルティングパートナーの一員として活動する株式会社スタイルズが、AWS導入、移行、開発、セキュリティ、運用保守など、すべてのご相談に乗らせていただきます。 AWSを導入したいが何から始めたらいいかわからない 既存のベンダーが新技術に弱く、良い提案がもらえない クラウドの導入にセキュリティの不安がある AWSをとりあえず導入したが、さらに活用していきたい 社内にAWSの知見を持っている人がいない AWSならではのシステム開発を詳しく知りたい

    株式会社スタイルズ
    kwry
    kwry 2012/07/09
    ExtendedStatus On
  • ApacheのSegmentation faultはgdbで簡単に特定(mod_mruby編)

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 Apacheのデバッグの方法は多く紹介されていて、例えばgdbを使ってみましょうと紹介されている記事も多いです。しかし、操作の仕方が多岐に渡っていて、なんとなく敷居が高く感じて使わないという人も多いかもしれません。 例えば、Apache周りのエンジニアが一番気になるのは、Segmentation faultだと思います。そこで、今回は自分がSegmentation faultの原因を特定する時の一番手っ取り早い、gdbを使った方法を紹介しようと思います。gdbを使っていない人にとって、gdbって少し敷居が高いんじゃないかなぁ、と思っている人も多いかもしれませんが、今回の方法であればだれでも気軽にできると思います。 まずはバグを作る 今回は、自

    ApacheのSegmentation faultはgdbで簡単に特定(mod_mruby編)
  • アパッチのソケットサーバ実装 - 中年engineerの独り言 - crumbjp

    少しずつアパッチの中の話をしていきます。 今回はネットワークサーバの基となるソケット実装の話です。 アパッチのソケットサーバ実装は結構有名な方法だと思っていたのですが 人との会話中に、意外と知られていないのかもしれないと感じる事もあったので 書いてみようと思った次第です。 入門書などで出てくる一般的なソケットサーバの実装方法 // ソケット作成 listen_sock = socket(...); // アドレス:ポートを紐付け bind(listen_sock,...); // クライアント受付開始 listen(listen_sock,...); // クライアント受付ループ for (;;){ // クライアントの接続まで待機 client_sock = accept(listen_sock,...); // 子プロセス作成 if ( fork() == 0 ) { // 子プロセ

    アパッチのソケットサーバ実装 - 中年engineerの独り言 - crumbjp
    kwry
    kwry 2012/03/20
  • httpdでcacheする apache編 - だるろぐ

    ※このエントリは微妙に自力ではありません webアプリを運用していて、静的・動的問わず 転送量がやばい 負荷がやばい そのせいで誰かがやばい などといったときがあることもあって、普通はmemcachedなりsquidなりを使うけど、 そこまでガッツリcacheする程ではない 又はめんどい 又はわざわざ他のミドルウェア導入せんでもhttpdだけである程度なら いいから早く何とかしろ などのケースが有ったり無かったり。 で、静的コンテンツをhttpdでさくっと対処する場合の話。 apacheだったらそこでmod_cache。 mod_cacheにはディスクに記憶するmod_disk_cacheとメモリに記憶するmod_mem_cacheがある。 静的コンテンツならmod_disk_cache、動的コンテンツ・リバースプロキシならmod_mem_cacheが定石らしい。 設定内容 例えば /im

    httpdでcacheする apache編 - だるろぐ
  • サーバにDoS耐性を付ける - stanaka's blog

    ウェブサービスでは、アクセスが集中して、サイトが落ちる、というのは、よくある話です。純粋に人気が出てアクセス集中するなら、サーバ管理側の責任と言われても、しかたないと思います。しかし、botやF5アタックによる突発的な集中アクセスで、落ちてしまう、というのは、運営側としても、あまり納得がいくものではありません。 そのような突発的なアクセスに対応するために、大量のアクセスをしてくるクライアントを検出し、優先度を落すか、アクセス禁止にする方法などがあります。 というわけで、Apacheモジュールでそれを検出するためのmod_dosdetectorを開発しました。(ちなみにコア部分の開発期間は、Apacheモジュールって、どう書くんだっけ、という状態から、3日でした。) mod_dosdetectorは、Apacheモジュールとして動作し、クライアントのIPアドレスごとにアクセス頻度を測定し、設

    サーバにDoS耐性を付ける - stanaka's blog
  • Apache チュートリアル: Server Side Includes 入門 - Apache HTTP サーバ

    Please note This document refers to the 2.0 version of Apache httpd, which is no longer maintained. Upgrade, and refer to the current version of httpd instead, documented at: Current release version of Apache HTTP Server documentationYou may follow this link to go to the current version of this document.

  • apache脆弱性対策 - Range header DoS vulnerability Apache HTTPD 1.3/2.x (CVE-2011-3192) - うまいぼうぶろぐ

    http://mail-archives.apache.org/mod_mbox/httpd-announce/201108.mbox/browser もうあちこちで大騒ぎになっていてみんな知ってると思うけど。HTTP Requestに非常に長い(コンマ区切りの複数のヘッダ) Rangeヘッダを送られるとapacheのプロセスがメモリいまくるっていう。 追記 2011/9/17 現在でapache 2.2.21 が出ているので、可能であればバージョンアップしときましょう。 ## 追記終わり 対象は全バージョンのapache 攻撃が簡単 (Rangeヘッダをちょろっといじるだけ: 某所にupされてるperlも80行程度 ということで結構厄介かも。すぐパッチが出るとのことだけど、急いで対応する場合は↑のURLのとおりhttpd.confを設定する。 apache 2.2の場合はmod_hea

    apache脆弱性対策 - Range header DoS vulnerability Apache HTTPD 1.3/2.x (CVE-2011-3192) - うまいぼうぶろぐ
  • Apache killerは危険~Apache killerを評価する上での注意~

    Apacheの脆弱性(CVE-2011-3192)いわゆるApache killerが話題になっていますが、その脅威については一部誤解があるようです。 以下は、非常に脅威とする報告の例です。 一方今回のはプロセスの肥大化を伴うので、実メモリ消費して更にスワップも使い尽くしてOS毎激重になったあげくLinuxとかの場合はOOM Killer発動と、他のプロセスや場合によってはOSを巻き込んで逝ってしまいます。 CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.xより引用 以下は、それほど脅威でなかったとする報告の例です。 pooh.gr.jp は結構頑丈だったので 60 並列でやっと CPU idle 30% まで減らせた。 Apache Killer (CVE-2011-3192) 対策 for CentOS 5

  • hansode.org - このウェブサイトは販売用です! - hansode リソースおよび情報

    このウェブサイトは販売用です! hansode.org は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、hansode.orgが全てとなります。あなたがお探しの内容が見つかることを願っています!

  • 今こそ見直すApacheの設定 - blog.nomadscafe.jp

    nginxやvarnishなどがアツいですが、Apacheもまだまだ実績や安定性から採用されていると思います。ここではデフォルトとは異なる値に変更するサーバ設定を中心に、パフォーマンス改善、安全性向上のためのApacheの設定を紹介します。 mpmの確認 > /path/to/bin/httpd -V Server version: Apache/2.2.19 (Unix) Server built: Jun 23 2011 17:13:13 Server's Module Magic Number: 20051115:28 Server loaded: APR 1.4.5, APR-Util 1.3.12 Compiled using: APR 1.4.5, APR-Util 1.3.12 Architecture: 64-bit Server MPM: Worker PreforkやW

    kwry
    kwry 2011/07/06