タグ

httpに関するamari3のブックマーク (27)

  • 処理中のPOSTリクエストを別のサーバで引き継ぐPartial POST Replayについて - ASnoKaze blog

    なんらかの理由でWebサーバを停止する場合に、処理中のPOSTリクエストをそのまま別のサーバで引き継げるようにする「HTTP Partial POST Replay」という仕様がFacebookのAlan Frindell氏から提出されています (HTTP Workshopの資料はこちら)。 スポットインスタンスを利用していたり、サーバの設定を変えて再起動したい場合、新しいリクエストは受け付けないようにし、すでに来ているリクエストのみ処理をするのは一般的です。それでも大きなファイルをアップロードしているPOSTリクエストは処理が終わるまで時間がかかってしまう場合がありあります。 やむをえずPOSTリクエストの処理を中断してしまうと、ユーザは再度大きなファイルをアップロードしなおす必要があり、とてもストレスがかかります。 「HTTP Partial POST Replay」では、ユーザの接続

    処理中のPOSTリクエストを別のサーバで引き継ぐPartial POST Replayについて - ASnoKaze blog
    amari3
    amari3 2019/07/02
  • 最近、httpstat なるものが流行っているらしい - tellme.tokyo

    github.com おそらく先行実装は python で書かれたこれです。 curl にはウェブサイトの応答時間を計測する機能が搭載されており、このツールではそれを利用して出力結果をグラフィカルに表示させています。単なる curl のラッパーのようなツールなのですが、見た目がリッチになるのに加えて、単一ファイルで実行でき python のバージョンに影響されないような工夫がされているのが、受けているポイントのような気がします。 このツールを見たとき「Go で書いてみるの良さそう!(この手のツールで単一バイナリになるのは嬉しいですよね)」と思い、休憩時間やお昼休みなどにちまちま書いていたら、二日前に先を越されてしまいました(そりゃそうですよね。なんでもスピードが大事だと痛感)。 github.com また、ついこの間まで 800 Stars くらいだったのですが、ここ1週間で爆発的に伸びて

    最近、httpstat なるものが流行っているらしい - tellme.tokyo
  • MYSQL HTTP PLUGIN確認 の補足

    MySQL HTTP Plugin確認 | variable.jp [データベース,パフォーマンス,運用] を写経して失敗したので補足メモ。 2. my.cnfをマニュアルを見て編集 myhttp_default_mysql_user_name = http_sql_user myhttp_default_mysql_user_passwd = sql_secret myhttp_default_mysql_user_host = 127.0.0.1 * myhttp_default_mysql_user_nameは BASIC認証に成功した後に myhttpプラグインからMySQLに接続しに行くときに使うユーザー名。暗黙のデフォルトは "root" * myhttp_default_mysql_user_passwdは BASIC認証に成功した後に myhttpプラグインからMySQL

  • HTTPステータスコードを適切に選ぶためのフローチャート : 難しく考えるのをやめよう | POSTD

    HTTPステータスコードを返すというのはとても単純なことです。ページがレンダリングできた?よし、それなら 200 を返しましょう。ページが存在しない?それなら 404 です。他のページにユーザをリダイレクトしたい? 302 、あるいは 301 かもしれません。 I like to imagine that HTTP status codes are like CB 10 codes. "Breaker breaker, this is White Chocolate Thunder. We've got a 200 OK here." — Aaron Patterson (@tenderlove) 2015, 10月 7 訳:HTTPのステータスコードのことは、市民ラジオの10コードみたいなものだと考えるのが好きです。「ブレーカー、ブレーカー、こちらホワイト・チョコレート・サンダー。200

    HTTPステータスコードを適切に選ぶためのフローチャート : 難しく考えるのをやめよう | POSTD
    amari3
    amari3 2016/02/18
  • Webサーバのベンチマークツールはh2loadが便利 - 人間とウェブの未来

    Webサーバのベンチマークをとるのが趣味になりつつあるmatsumotoryです。 Webサーバのベンチマークについては、abからはじまりwrk等を使っていたのですが、最近ではほぼh2loadを使っています。 h2loadはnghttp2というHTTP/2ライブラリのアプリケーションに含まれているツールですが、 HTTP/2(SPDYも)とHTTP/1.xに両対応している ベンチマーク側の同時スレッド数を増やせる TLS及びSNIもサポートしている 最小、最大、平均、標準偏差あたりもちゃんとでる ので、色々プロトコルを変えつつ同じベンチマークツールで、値の目安を出すにはとても重宝しています。 Nghttp2: HTTP/2 C Library - nghttp2.org 実行結果のサンプルは例えば以下、 $ h2load -c 100 -n 10000 https://localhost:

    Webサーバのベンチマークツールはh2loadが便利 - 人間とウェブの未来
  • なぜ今、新しいHTTPサーバが必要なのか - H2O について勉強会で話したこと

    先月末の話になりますが、SAPジャパンさんを会場に開催されたデータ転送ミドルウェア勉強会で、私が中心になって開発しているHTTPサーバ「H2O」について話す機会をいただき、登壇してきました。 以下は当日使用したスライドです。なぜ今H2Oを開発しているのか、その背景にある現状認識と将来の方針について、日語で説明してあるので、興味ある方はご覧ください。 発表の機会をくださった@repeatedlyさんと@frsyukiさん、会場を提供してくださったSAPジャパンさん、ありがとうございました。 H2Oの開発は順調に進んでおり、HTTP/2サーバプッシュへの対応も完了し、まもなく次のバージョンがリリースできるかと思います。今後ともよろしくお願いいたします。

    amari3
    amari3 2015/02/06
  • PHPでHTTPの並行ダウンロードを実現する(Guzzle編) - hnwの日記

    PHPで最近注目のHTTPクライアントライブラリにGuzzleがあります。日での知名度はまだまだという印象ですが、かなり高機能かつ真面目にメンテナンスされている印象で、今後のデファクトスタンダードになりうるライブラリと言えるでしょう。 稿ではこのGuzzleを使ってWebサーバから並行にダウンロードする方法を紹介します。Webブラウザのように同時に複数コネクションを管理しながらKeep-Aliveでコネクションを使い回しますので、下手なコードで実現するより接続先Webサーバにも優しいはずです。 Guzzleの特徴 まずは、Guzzleについて僕が特徴的だと思う点を紹介します。 パッと見でわかりやすいインターフェース cURLは必須ではないがデフォルトでcURLを使う cURLの無い環境がありうるので、cURL無しでも動くのは嬉しい cURLのわかりにくいインターフェースを隠してくれるの

    PHPでHTTPの並行ダウンロードを実現する(Guzzle編) - hnwの日記
  • HTTPでHashやArrayを送る手法に仕様は存在しない……の? - ただのにっき(2013-09-15)

    ■ HTTPでHashやArrayを送る手法に仕様は存在しない……の? jQueryでこんなふうに書くと: $.post('/', { hash: { foo: 'hoge', bar: 'fuga'}, array: ['baz', 'piyo'] }); サーバ側でこんなふうに受け取れて(これはSinatra): post '/' do params.each do |key, val| puts "#{key}: #{val} as #{val.class}" end end ちゃんとHashやArrayとしてアクセスできる: hash: {"foo"=>"hoge", "bar"=>"fuga"} as Hash array: ["baz", "piyo"] as Array ああこりゃ便利だね、で済ましてもいいんだけど、HTTP POSTの中身なんてただのバイト列なんだから型の情

  • HTTPリクエストを減らすために【序章】HTTPリクエストは甘え - MOL

    このシリーズはHTTPリクエストの理解を通じてWebパフォーマンスの重要性について考える5章構成になっている。 【序章】HTTPリクエストは甘え 【CSS Sprite編】スプライト地獄からの解放 【WebFont編】ドラッグ&ドロップしてコマンド叩いてウェーイ 【DataURI編】遅延ロードでレンダリングブロックを回避 【終章】我々には1000msの猶予しか残されていない 1日目は、HTTPリクエストの概要について説明する。 例えに、私のポートフォリオページ(t32k.me)が表示されるまでの流れを見ていく。まず、検索からでも方法はなんでもよいが、ブラウザのURLバーにt32k.meと打ち込んでアクセスする。そのページを見にいくということは、つまりt32k.meに対してHTTPスキームでリクエストするということを意味している。 クライアントであるブラウザは入力されたURLを判断して、リソ

  • Webに関わる人のための『HTTPの教科書』を発売 - うさぎ文学日記

    ひさびさの単著となる『HTTPの教科書』が2013年5月24日に発売になります。 内容はタイトルの通り、Webに関わる全ての人に捧げるHTTPを学ぶための教科書です。基礎を学びたい初心者の方から、机の上に置いてリファレンス的に使いたい方までを対象としています。 HTTPの教科書発売元: 翔泳社価格: ¥ 2,730発売日: 2013/05/25posted with Socialtunes at 2013/05/21 HTTP関連の書籍は『今夜わかるHTTP (Network)』というタイトルのを2004年に出しています。その頃からHTTP/1.1が主流であるというのは、今でも変わりませんがそれを取り巻く環境というのは変わりつつあります。 HTTPを学ぶ上での要点がわかりやすく、そして読みやすくなっております。前作のリニューアルっぽく感じるかと思いますが、9割以上は書き直しや追記しており

    Webに関わる人のための『HTTPの教科書』を発売 - うさぎ文学日記
    amari3
    amari3 2013/05/21
  • いい加減、<script src="http://.. と書くのはやめましょう - DQNEO起業日記

    外部サイトのJSファイルを読み込むときに、こういう書き方するのはやめましょう。 <script src="http://example.com/js/jquery.js"></script> 理由 あなたのサイトが、いつの日かSSLに対応することになったとき、そのscriptタグがバグの原因になります。 ご覧のとおり、HTTPSページの中でHTTP要素を読み込もうとすると、ブラウザによっては安全装置が働いて読み込んでくれないのです。 上の例ではjQueryの読み込みに失敗していますが、エラーメッセージ「Uncaught ReferenceError: jQuery is not defined 」を見てもHTTPS/HTTPのプロトコルが原因だとはすぐ気づかないので、わかりにくいバグになってしまいます。 結論 JSファイル(とかCSSとか画像とか)を読み込むときは、"http:"の部分を省

    amari3
    amari3 2013/05/20
  • ウェブサービスのクライアントライブラリやHTTPをつかったミドルウェアのクライアントを作成する際に気をつけるべきこと - tokuhirom's blog

    ウェブサービスのクライアントや、Net::Groonga::HTTP のようなミドルウェアのクライアント、いろいろありますが、HTTP サーバーへの簡単なアクセスを提供するライブラリをつくるときに僕が気をつけていることをここに記す。みんな気をつけたほうがいいです。 HTTP Client Library の引数を変更できるようにするか、HTTP Client Library のインスタンスをさしかえられるようにする変更できないライブラリとか利用価値がないです。。 タイムアウトの設定もかえられないライブラリとか、たまにありますが、ちょっとひどいですね。 生のレスポンス情報がとれるようにするHTTP::Response なり Furl::Response なりをそのままとれるようにすべき。 たとえば、$client->last_response のようなメソッドを用意し、最後のレスポンスオブジ

    amari3
    amari3 2013/04/26
  • 【HTTP2.0最新動向】SPDYからHTTP/2.0へ~HTTPbis WG Interim Meetingレポート 

    amari3
    amari3 2013/03/25
  • httpstatus コマンドで、HTTP のステータスコードをすばやくしらべる! - tokuhirom's blog

    一般的な Web Programmer ならば、HTTP Status code はすべて暗記していると聞きました。 しかし、僕は初心者なので、なかなか覚えきれていないので、HTTPのステータスコードをさがすのに便利なツールを用意しました。App::httpstatus です。インストール方法は cpanm App::httpstatus です。というか依存とかないのでhttp://api.metacpan.org/source/TOKUHIROM/App-httpstatus-v1.0.0/httpstatus をコピーしてくればうごきます。 使い方は以下のとおりです。 4xx なコードを列挙する。 % httpstatus 4 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Foun

    amari3
    amari3 2013/02/21
    便利
  • 【HTTP2.0最新動向】第1回:HTTP/2.0の策定、ついに始まる 

    amari3
    amari3 2012/11/06
  • 手軽に使える forward http proxy : stone, Tinyproxy - 酒日記 はてな支店

    直接グローバルに繋がる経路をもたないホストから http アクセスしたいので http proxy を使いたい。Squidは定番ですが、もう少し手軽なのはなにかないかと思っていたところ twitter で教えていただきました。ありがとうございます。 reverseじゃなくてforwardなhttp proxyでsquid以外って手軽なの何かないか。Apacheをそれだけのために動かすのはちょっと…てかんじ 2012-10-23 17:57:44 via YoruFukurou @fujiwara stone とか? 2012-10-23 18:03:07 via web to @fujiwara @fujiwara うちはtinyproxyつかってますよ。 2012-10-23 19:01:47 via Echofon to @fujiwara Stone Simple Repeater

  • tcpflow: httpレスポンスボディをリアルタイムで見たいとき | Ore no homepage

    tcpdumpの表示では見にくいし、pcapをいちいちwiresharkにわせてfollow tcp streamするのは面倒。そんなときに使えるツール。 (1) tcpflow tcpflow(最新はgithubかな) http://www.circlemud.org/jelson/software/tcpflow/ https://github.com/simsong/tcpflow (2) インストール 自分のメモをペッと貼付けただけなので、バージョンやダウンロード先は適当に読みかえてください。 yum install libpcap-devel wget http://www.circlemud.org/pub/jelson/tcpflow/tcpflow-0.21.tar.gz tar xvfz tcpflow-0.21.tar.gz cd tcpflow-0.21 ./con

  • 先輩と覚える HTTP ステータスコード

    gistfile1.md 先輩に学ぶ HTTP Status Code 超雑にまとめました。修正してください。 登場人物 アプリケーション先輩: いつも忙しい。横に広がるのが得意(デブじゃない)。 後輩: 頼んでばっかしで役に立たない。 サーバー先輩: アプリケーション先輩と仲がいい。Unix Socket でつながるくらい仲良し。 プロクシ先輩: アプリケーション先輩とかサーバー先輩と後輩の間を取り持って代わりに伝えたりしてくれる。たまに勝手にレスポンスを書き換える。 1xx 系 100 Continue 後輩「あ、先輩!お願いが!」 アプリケーション先輩「おー、聞いてやる。詳しく話せ」 101 Switching Protocols 後輩「せんぱーい、お願いなんですけどー」 アプリケーション先輩「ちょっと待て、お前 HTTP 1.0 で喋るな、 HTTP 1.1 か TLS 1.0 で

    先輩と覚える HTTP ステータスコード
  • HTTP通信を含むモジュールのテスト - Articles Advent Calendar 2011 Test

    こんにちは!こんばんは!寒いのがめっぽう苦手、bayashi です! きょうは、HTTP通信を伴うモジュールのテストについて書いてみます! サンプルモジュール WWW::Foo8 具体的に説明するために、WWW::Foo8 というモジュールを書きました! package WWW::Foo8; use strict; use warnings; our $VERSION = '0.01'; use Class::Accessor::Lite ( rw => [qw/agent error/], ); sub new { my ($class, %args) = @_; $args{agent} = _default_agent() unless $args{agent}; bless \%args, $class; } sub get { my ($self, $uri) = @_; my

    HTTP通信を含むモジュールのテスト - Articles Advent Calendar 2011 Test
  • HTTPで正しくキャッチボールをするには | Lab by engineering@dwango.jp

    皆さんはキャッチボールは好きですか? 私はバスケットボールの方が好きです。 キャッチボールは、自分と相手双方がボールをうまくキャッチできるように投げる必要があります。これは、サーバーとクライアントの間でも同じで、クライアントから投げられたボール(リクエスト)をサーバーは正しく投げ返す(レスポンス)必要があります。 ここで、サーバーがボールをあさっての方向に投げたり、異常なスピードで投げ返すとどうなるでしょうか。おそらくクライアントはそのボールを取ろうとしますが、追いつけずにボールを落としたり、どこかにぶつけたりしてしまうでしょう。 今回は、HTTPについて、どうして正しくレスポンスを返さないといけないのかということについて、Rackを使用して解説していきます。 対象読者 Webアプリケーション開発に興味のある方、これから開発を行おうとしている方 Rackについて まず、今回使用するツール

    amari3
    amari3 2011/11/30