If you are not redirected automatically, follow this link.
If you are not redirected automatically, follow this link.
HTTPでは簡単に取得できるクライアントのGIP(グローバルIP)。 ただ、必ずしもHTTPを使うわけではなく、色々なプロトコルを使いたいときもありまして。WebsocketとかMQTTとかソケット通信とか色々。 そういうときに、ELBではTCPだとデフォルトではGIPが取得できないわけで、その対策をして、GIPを取得しましょうという話。 前提: クライアントのGIPを取得したい ELB作れるぐらいの知識がある サーバ側もproxy protocolの設定が必要になる(たとえば、nginxであれば1.5.12以上のバージョンを使い、かつnginx.confに手を入れる必要がある。この辺ちゃんと書かれた資料が少なくハマった… ということで、やっていきましょう。 nginxインストール まずnginxインストールする。 ubuntuだったら以下で最新版をインストールできる。 1 2 3 4 5
Nginx 1.4.2で試しました。 ネームサーバーは、ローカルのunboundをlocal-zone, local-dataを使って簡易コンテンツサーバーにして試しました。 local-zone: "oreno." static local-data: "api.oreno. 30 IN A 192.0.2.11" # local-data: "api.oreno. 30 IN A 192.0.2.12" proxy_passにホスト名を書くと→名前解決は一度だけ このように Nginx の設定を書いた場合、 location /api { proxy_pass http://api.oreno:9999; } 「api.oreno」の名前解決は、nginxの起動時に行われます 名前解決できない場合は、nginxは起動しません 名前解決できた場合は、ずっとそのIPアドレスにreverse
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
こんにちは。CTOの馬場です。 今回もインフラエンジニア向けにちょっとした情報を紹介します。 apache2.2から導入されたmod_proxy_balancer 、便利ですよね。 今回はそのmod_proxy_balancerでsorryサーバを実現する方法を紹介します。 と、いっても方法は簡単。 BalancerMemberの指定時に、statusを指定することで実現します。 1.2.3.4、1.2.3.5がサービスのサーバで、1.2.3.6がsorryサーバの場合は下記のように設定します。 ProxyPass / balancer://hotcluster/ <Proxy balancer://hotcluster> BalancerMember http://1.2.3.4:8009 loadfactor=1 BalancerMember http://1.2.3.5:8009 l
http://httpd.apache.org/docs/2.2/en/mod/mod_proxy.html#proxypass http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html#proxypass timeoutとかconnectionとか。今まで真面目にみてなかったので。mod_proxyのdocumentは翻訳が追いついてないためか、日本語のページに記載されている内容は古いversionのものがあるので、なるべく英語のページを見たほうが良い。 とりまメモった内容を記録。体裁は後で整える。 あと、"まとめた"とか言ってるけど、全部のパラメータについて調べたわけではないです。 parameter: default Description timeout: ProxyTimeoutの設定値 ProxyTimeoutのdefault
先ほど、Kageというgemが公開されました。 https://rubygems.org/gems/kage https://github.com/cookpad/kage このgemは、クライアントからのリクエストを複製し、バックエンドの複数のサーバに同じリクエストを送る事が出来ます。これを使うことで、これから本番に適用するコードの負荷試験や、書き込みをDummyDBに逃がして、slaveを本番に接続するなどして本番データを使用した負荷テスト、ミドルウェアのバージョンアップのテストを行うことが出来ます。 実際にクライアントに返されるレスポンスデータはproductionサーバとして指定されたサーバから返却されるため、本番のリクエストを使用してテストが簡単に行えるようになります。 実際に本番のアクセスを流す方法にはいくつかあると思います。Kageが導入されたサーバに直でトラフィックを流す方
2012年3月27日(火) ■ mod_lua でリバースプロクシ _ もちろん apache 2.4、mod_lua が必要。さらに、mod_proxy と mod_proxy_http も。ProxyPass の設定は lua で置き替えるけど、よそにアクセスしにいく動作そのものは mod_proxy* がおこなうのでこいつらが不要になるわけではない。 -- httpd.conf LuaHookTranslateName /path/to/proxy.lua reverse_proxy -- proxy.lua backend = "http://127.0.0.1:8080" function reverse_proxy(r) r.handler = "proxy-server" r.proxyreq = apache2.PROXYREQ_REVERSE r.filename = "
KLab Advent Calendar 2011 「DSAS for Social を支える技術」の8日目です。 前回は php のプロセス数を絞ることのメリットを解説しました。 プロセス数を絞るには FPM を使うなどの方法もありますが、 DSAS for Social では php は Apache + mod_php を使っていて、 それにリバースプロキシを組み合わせて利用しています。 今日はこのリバースプロキシの役割を説明して行きます。 以降、リバースプロキシのことを単にプロキシと呼びます。 プロキシを使う理由 そもそも、なぜプロキシを使うのかを説明しておきます。 5秒ルール ケータイ向けのソーシャルアプリでは、ユーザーからのリクエストは 一旦プラットフォームのサーバーを経由して、アプリを提供している Webサーバーに到達します。 このとき、アプリ側のレスポンスがあまりに遅いとプ
Web Debugging Proxy Application for Windows, Mac OS and Linux Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet. This includes requests, responses and the HTTP headers (which contain the cookies and caching information). Read More Recent Developments For discussion on the latest ch
(2009/07/13追記)勘違いしていた部分や、今までできなかったことを修正・補足しました。 (2011/03/09追記)ときどきこっちの記事に引っかかる人もいるようでなんか申し訳ないので追記。今はGithub側でhttps経由でのpushにも対応してるのでこのバッドノウハウは不要です。http://d.hatena.ne.jp/nobeans/20100423/1271983544 やりたいこと 自分の管理管轄外にあるプロキシに閉じ込められた環境からgithubへつなげたい。pullだけじゃなくpushもしたい。 方針 以下の2つのサイトの折衷案みたいな方法でうまくいきました。 gitをHTTP Proxy経由で利用したい場合の対処法 - RX-7乗りの適当な日々 http://d.hatena.ne.jp/rx7/20080703/p1 cl.pocari.org - connect
drikin が dolipo というツールを公開しました。すでに話題になっているようですが、なかなか素敵なので紹介します。 dolipo は polipo という local web cache ツールの MacOS X 用の GUI wrapper。でも、彼の作品らしく単なる wrapper ではなく、ネットワークの変更を検知して polipo を再起動してくれたりして、polipo の存在をほとんど意識しないで使えるようなるスグレモノです。 local web cache としての polipo はなかなか優秀で、ブラウザでのウェブ閲覧の体感速度が結構よくなります。ブラウザとサーバの間の通信をいろいろ最適化して、体感速度をあげてくれます。実際に回線が太くなるわけではないのですが、体感速度はとても大切ですから、ね。polipo の話を聞いたときは、launchd で起動するようにすれば
2008年03月09日20:38 カテゴリInternet polipoをWindowsのFirefoxで試してみた その2 前の記事(しげふみメモ:polipoをWindowsのFirefoxで試してみた) で、「Windows版は uncachableFile が効かない?」と書いたら、すぐにコメントで教えていただきました。 http://interloper.org/tmp/polipo/polipo-1.0.4.0-forbidden-1-win32.exe こちらのバージョンを使うとforbiddenFileが有効になりますよ。 あと、uncachebleFileもこのバージョンを使っている私の環境では効いてます。 公式ページからもリンクされている以下のページから polipo-1.0.4.0-forbidden-1-win32.exe(この記事投稿時点)をダウンロードしました。
Webブラウジングでのクライアントのレスポンスを向上するプロキシソフト「dolipo」。使い方とともに、高速化の仕組みを解説する 少しでもネットワークを高速化したいヨーロッパ圏から学ぶ こんにちは、dolipoを開発したdrikinです。dolipoの着眼点は、ネットワークの技術的な側面だけでなく、Webアプリケーションの開発時に悩むネットワーク速度の問題に対しても、面白いアプローチになっています。 僕のこの技術との出合いは偶然でした。dolipoの元となったPolipoのプログラムを発見したときその効果に感動し、何とかこの素晴らしさをより簡単にもっと多くの人に伝えたいと思いdolipoを作りました。 日本では、光ファイバなどの高速回線の普及度が高く、サービスの品質も高いため、ネットワークサービスを開発する際にも、ネットワークのスピード自体はほとんど問題ではありません。いかにクライアントや
2004年にTracの存在を知って惚れ込む。Tracや同様のソフトウエアを普及させるべく,収集した情報をdiscypus.jpにて発信している。 今回は,TracをLinuxにインストールする手順と,Tracの管理者が行う基本的な設定,の2つについて説明します。ただし,前回はTrac Lightning 1.8,すなわちTrac 0.10.4日本語版を用いましたが,今回は新たにリリースされたTrac 0.11日本語版を用います。 ※ Trac 0.11(英語版)が2008-06-23にEdgewallから,そして2008-07-07にTrac 0.11日本語版がインタアクトからリリースされました。また,Trac Lightningも2008-07-14にリリースされた2.0.0以後でTrac 0.11日本語版を採用しています。 Linuxへのインストール 連載第2回で説明したように,Tra
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く