タグ

apacheに関するmuddydixonのブックマーク (32)

  • 忙しい人の5分で分かるMesos入門 - Mesos って何だ?

    アプリケーションエンジニアでもわかる Docker と Mesos 勉強会 https://sakura-kanto.doorkeeper.jp/events/53777 2016年11月18日(金) 発表資料 スライドの想定は 「 Mesos って聞いたことあるけど、よくわかんない 」 「 Apache Mesosって何だ? 」 といった疑問を持つ読者であり Mesos の概念や背景を知るための資料ですRead less

    忙しい人の5分で分かるMesos入門 - Mesos って何だ?
  • Go 言語で Apache Bench (ab) を実装してみた - takatoshiono's blog

    Go 言語で Apache Bench (ab) を実装してみた。 https://github.com/takatoshiono/go-ab なぜか 以前、wc コマンドを実装した。その時に ab も候補に入っていたけど、ab は http 通信をするプログラムなので、より単純な wc を選択したのだった。その次に何やるか、ということで http クライアントのコードを書く練習になりそうな ab を実装してみることにした。 期間は2016年10月から1ヶ月くらいやったあと、2ヶ月くらいブランクがあって、2017年1月に再開して一ヶ月くらいやっていた。コツコツとよく続いたと思う。 Apache Bench (ab) とは Apache Bench (ab) は HTTP サーバーの性能を測定するためのプログラムでシングルスレッドで動作する。Apache HTTP サーバーのソースコードに含

    Go 言語で Apache Bench (ab) を実装してみた - takatoshiono's blog
    muddydixon
    muddydixon 2017/02/06
    すばらし
  • ストリーム処理とは何か?+2016年の出来事 - Qiita

    その対処で全部に対応するのは無理なんじゃないの? Watermark、Trigger、Accumulationの機構が導入されればストリーム処理は全て対応可能かというと、 そんなことはありません。 何故なら、下記のような問題が発生してくるからです。 Watermarkを実時刻からどれくらい遅らせて設定すればいいのか? 遅れを大きくすれば正確性は増しますが、遅延時間は大きくなります。 Accumulationのためにウィンドウの集計結果をどれだけ保持すればいいのか? 保持する時間が長いほど、ストリーム処理を行うシステムのリソースが必要となります。 データ処理システム(バッチ、ストリーム含む)には下記の3要素のトレードオフがあるとされています。 完全性(Completeness) 低遅延(Low Latency) 低コスト(Low Cost) この3要素を全てに満たすことは出来ず、全てのデータ

    ストリーム処理とは何か?+2016年の出来事 - Qiita
  • IoT時代におけるストリームデータ処理と急成長の Apache Flink

    2. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 2 自己紹介  所属 • Acroquest Technology Co., Ltd. • 「働きがいのある会社」(GPTW) 従業員25~99人部門 2年連続1位  主な業務分野 • テクニカルアーキテクト • SEPG • IoTサービス開発 • ビッグデータ処理プラットフォーム  最近の興味 • サーバーレス • DevOps • Elasticsearch 鈴木 貴典 Twitter : @takanorig Qiita : http://qiita.com/takanorig 3. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 3 日お話する内容 #1 ビッグ

    IoT時代におけるストリームデータ処理と急成長の Apache Flink
  • nginxでもapacheでも使えるDoS的アクセスを検知して任意の制御をするWebサーバ拡張をmrubyで作った - 人間とウェブの未来

    github.com 会社の運用メンバーと色々議論していた中で、「カジュアルにWebサーバへのDoSみたいなアクセスが来た時に検知して制御したいよねー」という話が上がったので、http-dos-detectorというnginxでもapacheでも使えるWebサーバ拡張をmrubyで書きました。 もちろんmrubyなので、mod_mrubyとngx_mrubyを使っています。ので、Rubyコードはそのまま同じコードをどちらのミドルウェアでも使えます。mod_mrubyとngx_mrubyを使えば、ちょっとしたWebサーバの拡張は両方で同じ実装に落とし込めるので便利ですね。 使い方 例の如く、GitHubのREADME通りにインストールして下さい。Rubyのコードはmod_mrubyでもngx_mrubyでも有効なので、そのコードを読み込む設定をそれぞれ以下のように記述するだけでよいです。 a

    nginxでもapacheでも使えるDoS的アクセスを検知して任意の制御をするWebサーバ拡張をmrubyで作った - 人間とウェブの未来
  • Apacheのmod_statusの各状態はどういう意味か? - (ひ)メモ

    Apacheのmod_statusを使えば各プロセスの状態を知ることができます。CloudForecastやCacti等でそれを元に視覚化している人も多いと思います。 mod_statusで確認できる状態には以下の11種類があるのですが、 状態名 値 mod_stautsでの記号 説明 SERVER_DEAD 0 . Open slot with no current process SERVER_STARTING 1 S Server Starting up SERVER_READY 2 _ Waiting for connection (or accept() lock) SERVER_BUSY_READ 3 R Reading a client request SERVER_BUSY_WRITE 4 W Processing a client request SERVER_BUSY_

    Apacheのmod_statusの各状態はどういう意味か? - (ひ)メモ
  • ニフティクラウドとさくらのVPSに来る悪い人を比べてみる - ろば電子が詰まつてゐる

    ニフティクラウドでサーバを数台、手配していたのですが、諸事情で3月末までに返却しないといけなくなってしまいました。 ということで返す前に、ニフティクラウドに攻撃している悪い人たちと、さくらのVPSに攻撃している悪い人たちとを比べるとどうなのか……をちょっと見てみます。前回の「ニフティクラウドに来る悪い人を観察する、の取っかかり」の続きです。 環境 2/1から3/21までの期間、データ取得をおこいました。用いたVM環境は、以下の表の通りです。 ニフティクラウド さくらのVPS サーバの場所 西日(WEST-1) 石狩 IPアドレス 175.184.19.124 153.120.5.227 OS CentOS 6.4 (64bit) CentOS 6.5 (64bit) Apacheバージョン 2.2.15(標準RPM) 2.2.15(標準RPM) なおApacheについては、mod_rew

    ニフティクラウドとさくらのVPSに来る悪い人を比べてみる - ろば電子が詰まつてゐる
  • ApacheでリバースプロキシしてかつLDAP連携してshibに認証をかけた話 - wyukawa's diary

    shibには認証機能は無いのですが、認証をつける必要が出てきたりします。 固定パスワードによるBasic認証であればexpress.basicAuthを使えばいいらしいというのはわかったので対応してpull requestでも出すかーとか思ってました。 で、でもですね、誰がどういうクエリを投げたのかロギングしたいなんていう独自要件が出てきましてこりゃLDAP連携が必要だなあという話になりました。 なので、ApacheでリバースプロキシしてかつLDAP連携してshibに認証かけたりなんかしました。 どんな感じでやるかというとこんな感じです。 mod_authnz_ldapを使ったときのユーザ名の扱いについて - たごもりすメモ こうすればバックエンド側のshibでx-forwarded-userヘッダにユーザ名が渡ってきます。 あとはこいつをロギングすればOK。 log4jsなんていうモジュ

    ApacheでリバースプロキシしてかつLDAP連携してshibに認証をかけた話 - wyukawa's diary
  • CGI版PHPに対する魔法少女アパッチマギカ攻撃を観測しました

    昨夜に、魔法少女アパッチ☆マギカ攻撃を観測しました。魔法少女アパッチ☆マギカとは、PoCのソースコードに Apache Magica by Kingcope とコメントされていることに由来しています(というか、私がそう訳しましたw)。 これは10月29日にPoCが発表されたPHP-CGI攻撃(CVE-2012-1823)の変種です。従来のPHP-CGI攻撃は、CGI版PHPが動作する環境で、PHPスクリプト(中身はなんでもよい)に対する攻撃でしたが、魔法少女アパッチマギカの方は、/cgi-bin/に置かれたPHP処理系(php-cgiなど)に直接攻撃するものです。 CGI版PHPを設置する方法は複数ありますが、よく使われる方法としてApacheのリダイレクトによりPHPスクリプトをPHP処理系に実行させる方法があります。この場合、/cgi-bin/php-cgiなどとしてPHP処理系を公開

  • Apache Sparkってどんなものか見てみる(その1 - 夢とガラクタの集積場

    こんにちは。 Kafkaを試している最中で微妙ですが、最近使えるのかなぁ、と情報を集めているのが「Apache Spark」です。 MapReduceと同じく分散並行処理を行う基盤なのですが、MapReduceよりも数十倍速いとかの情報があります。 ・・・んな阿呆な、とも思ったのですが、内部で保持しているRDDという仕組みが面白いこともあり、 とりあえず資料や論文を読んでみることにしました。 まず見てみた資料は「Overview of Spark」(http://spark.incubator.apache.org/talks/overview.pdf)です。 というわけで、読んだ結果をまとめてみます。 Sparkとは? 高速でインタラクティブな言語統合クラスタコンピューティング基盤 Sparkプロジェクトのゴールは? 以下の2つの解析ユースケースにより適合するようMapReduceを拡張

    Apache Sparkってどんなものか見てみる(その1 - 夢とガラクタの集積場
  • mrubyによるWebサーバの機能拡張支援機構を一緒に開発しませんか?

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 ある人「あなたのやりたいことはなんですか?」 僕「複数あるWebサーバソフトウェアの拡張記述を統一したいです」 ある人「(それはさすがに無理だろ…)」 という感じで始まったmod_mrubyやngx_mrubyの開発ですが、今ではそれも夢では無い所まできています。当時は「mod_mrubyを作ってみようか」という記事からmod_mrubyの開発ははじまりました。 朧げにあったアイデアでは、「どうやって統一するのか?どんな言語にするのか?どうやって組み込むのか?え?そもそもそんな事無理では?」という感じでしたが、1年前に運良くmrubyGitHubで公開されて以来、色々なアイデアのピースがはまっていき、いつの間にかそのアイデアが形になろうとし

    mrubyによるWebサーバの機能拡張支援機構を一緒に開発しませんか?
  • HTTP入門

    HTTPとは? HTTPのサンプル メッセージ構文 リクエスト行 レスポンス行 メソッド ステータス番号 ヘッダ Accept (要求) Accept-Charset (要求) Accept-Encoding (要求) Accept-Language (要求) Accept-Ranges (応答) Age (応答) Allow (要求/応答) Authorization (要求) Cache-Control (要求/応答) Connection (要求/応答) Content-Encoding (要求/応答) Content-Language (要求/応答) Content-Length (要求/応答) Content-Location (要求/応答) Content-MD5 (要求/応答) Content-Range (要求/応答) Content-Type (要求/応答) Date (

  • 【HTTP】Keep Alive のメモ at softelメモ

    Keep-Aliveがなかった当初のHTTPはシンプルだった。ステートレスで単純。それはとてもよいことだけど、遅かった。そこでKeep-Aliveが発明された。 HTTP/1.0 HTTP 1.0 では、keep-aliveの仕様はなくて、後付けで実装された。 もしブラウザがサポートしているならこんなリクエストを送る。 Connection: Keep-Alive そしてサーバーもこう返す。 Connection: Keep-Alive そして、接続を捨てずに、再利用して、サーバーかクライアントのどちらかがやり取りを終了したとして接続を破棄するまでこれを続ける HTTP/1.1 HTTP 1.1 では、すべての接続がkeep-alive。 次のようなヘッダが送信されない限りは keep-alive。 Connection: close なので、Connection: Keep-Alive

    【HTTP】Keep Alive のメモ at softelメモ
  • Apacheでreverse proxyするときに、受けのパスに応じて異なるタイムアウト値を設定する方法 - (ひ)メモ

    Apacheでreverse proxyするときに、バックエンドは同じなんだけど受けるパスに応じて別なタイムアウト値を設定しようとしてハマったのでそのメモです。 以下、Apache 2.2.22 でのお話です。2.4でどうなってるか、どなたかご存知でしたら教えてください>< まず思いつくのはこんな設定だと思います。 ProxyTimeout 7 ProxyPass /3sec/ http://127.0.0.1:9999/ timeout=3 ProxyPass /5sec/ http://127.0.0.1:9999/ timeout=5バックエンド (127.0.0.1:9999) は、こんなのを動かしておけば十分です。 $ while true; do echo listen...; nc -l 9999; doneこれでクライアントでアクセスしてみると… $ time curl h

    Apacheでreverse proxyするときに、受けのパスに応じて異なるタイムアウト値を設定する方法 - (ひ)メモ
  • abコマンドのベンチマークパターンを書けるab-mrubyを作った

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 Web屋さんはみんな大好きabコマンドは便利ですが、オプションは複雑で数も多く、複数のホストにそれぞれに対応するオプションを指定してテストしたりすると結構カオスになりがちです。 最近では、httperfやweighttp等のabに変わる次のHTTPベンチマークツールが出てきていますが、やっぱりまだまだ現役で良く使うのはabコマンドだと思います。 そこで、今回はabコマンドの複数のベンチマークオプションのパターンを1つのRubyスクリプトに定義しておいて、それをabコマンドで読み込む事で動的に任意のパターンでベンチマークを行うab-mrubyを作りました。外出しで書いたRubyスクリプトとabコマンドの連携は、ab-mrubyと見てわかるように

    abコマンドのベンチマークパターンを書けるab-mrubyを作った
  • blog.katsuma.tv

    認証APIについていろいろ調査をしていて、TwitterAPIでPOST系APIで認証にBasic認証を利用している箇所で、どうやって実装しているんだろう?という話になりました。「まさか全ユーザの情報を.htpasswdファイルなんかに格納しているはずは無いだろうに。。。」と思いながら調べていると、Basic認証のユーザ情報を既存のMySQLDB/Tableと統合するためのApacheモジュール「mod_auth_mysql」なるものを発見しました。この利用方法について、まとめてみたいと思います。 MySQL以外もOK 普段はRDBMSにはMySQLを利用しているので、mod_auth_mysqlについて調査をしていましたが、他のRDBMS用にもモジュールは用意されているようです。たとえば、Apacheのmoduleの公式サイトで「mod_auth」で検索すると、mod_authn_db

  • Apache 2.4系でのモダンなアクセス制御の書き方

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 これまでのApache2.2系以前でのアクセス制御の書き方は賛否両論でした。僕はあまり好きじゃありませんでした。 過去のアクセス制御に関しては、以下の記事がとてもわかりやすくまとめられていると思います。 こせきの技術日記 – Apacheのアクセス制御をちゃんと理解する。 ここで、以下のように言及されています。 こんなバッドノウハウ、当はどうでもいいと思う。Apache 3.0では、かっこいいDSL(VCL)で書けるようにする構想があるらしいのでがんばってほしい。 ということで、2.4系ではDSLとはいかないまでも、Require*というディレクティブを使ったモダンな書き方ができるようになったので、それを2.2系以前のアクセス制御の記述と比

    Apache 2.4系でのモダンなアクセス制御の書き方
  • Apacheのアクセス制御をちゃんと理解する。 - こせきの技術日記

    Apacheの設定で Order deny,allowとか Satisfy anyとか、なんだか意味わからん人のために。僕はずっとわかってなかった。 基 Apacheのアクセス制御には、 ホストによる制御 (Order,Allow,Deny) ユーザ認証による制御 (Auth*, Require) の2通りがある。 Satisfyは、2通りあるアクセス制御の両方を満たす必要があるかどうかを決定する。デフォルトはSatisfy all。Satisfy anyなら、どちらか片方満たせばよい。 Order http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order Order deny,allowは、全てのホストからのアクセスを許可する。 Order allow,denyは、全てのホストからのアクセスを拒否する。 Order d

    Apacheのアクセス制御をちゃんと理解する。 - こせきの技術日記
  • mod_spdyから学ぶSPDYとストリーム並列処理の実装

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 HTTP関連の研究をしているので、そろそろ古い技術を詰めるばかりではなく(これはこれでとても大事な事なのですが)、新しい技術についても調べておきたいところです。 ということで、僕のSPDYに関する現状の理解を、mod_spdyに関する情報を元にまとめておきたいと思います。 SPDY概要 SPDYの概要を表す図としては、下記が良く用いられます。 TLS上にのせたSPDYストリーム上でHTTPやWebSocketを扱うプロトコルで、特徴としては、以下の4つがあげられます。 ストリームの並列化 フレームレイヤーやヘッダーの圧縮 リクエストの優先処理 サーバからのリソースプッシュ HTTP/2.0についても、SPDYを元に仕様が検討されています。では

    mod_spdyから学ぶSPDYとストリーム並列処理の実装
  • 言語の性能の差がApacheモジュールの決定的な差でないことを教えてやる

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 mod_mrubyにはぜひluajit版に勝って、言語の性能の差がシステム全体の決定的な差でないことを教えてやる と言ってほしい。すっかり他力願モード — Miura Hidekiさん (@miura1729) 1月 23, 2013 というツイートに触発されて、mod_luaのLuaJIT版の速度がどの程度早く、mod_mrubyと比較してどれほどの性能差があるのかを試してみました。 mod_luaのLuaJIT版の設定 ここが結構はまってしまって、最新のApache2.4.3ソースで–enable-luajitとしても、LuaJIT版でmod_luaが動作するようにはなっていません。バグかな? というわけで、Apacheのソースを追って

    言語の性能の差がApacheモジュールの決定的な差でないことを教えてやる