タグ

rackに関するPinkのブックマーク (10)

  • RubyでHTTPサーバーをゼロから手作りする(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Ruby HTTP server from the ground up 原文公開日: 2021/07/03 原著者: Dmitry Ishkov 何かを始めるときはとりあえず動かしてみることが大事ですが、プログラミングをレベルアップするには、それまで慣れ親しんできた抽象概念より数段下の裏舞台を知っておくことも肝心です。 Web開発ではHTTPのしくみを理解しておくことが重要です。そのためにはHTTPサーバーを自作するのが一番です。 そもそもHTTPとは HTTPはTCP上で実装されたプレーンテキストのプロトコルなので、リクエストの内容を調べるのも簡単です(HTTP/2は実際にはプレーンテキストではなく、効率化のためバイナリになっています)。リクエストの構造を見る方法のひとつは、以下のようにcurlコマンド に -v(verbose

    RubyでHTTPサーバーをゼロから手作りする(翻訳)|TechRacho by BPS株式会社
  • Rack解説 - Rackの構造とRack DSL - Qiita

    Rackとは RackはRubyによるWebアプリケーション開発のHTTP送受信処理を担当するモジュール(gem)で、Ruby on Railsを始めとする多くのWebフレームワークの一番下のレベルで利用されています。 稿ではRackの基的な部分を中心に説明します。 簡単なRackアプリケーション まず基を理解するため説明用の簡単なアプリケーションを作成します。 最初にrack gemのインストールが必要ですが、Ruby on Railsをインストールしている場合はすでに必須モジュールとして入っています。単独でインストールする場合は次を参考にして下さい。 次にconfig.ruという名前の小さなファイルを作ります。これはRackのサーバ起動コマンドrackupの設定ファイルで、中身はRubyで記述します。 class ShowEnv def call(env) [ 200, # ステ

    Rack解説 - Rackの構造とRack DSL - Qiita
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • HTTPで正しくキャッチボールをするには | Lab by engineering@dwango.jp

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

  • KOSHIGOE学習帳 - [Ruby] Rackプロトコル仕様

    Rack provides an minimal interface between webservers supporting Ruby and Ruby frameworks. RackはRubyをサポートするウェブサーバ群とRubyフレームワークとの間の最小のインターフェースを提供する。 Rack: a Ruby Webserver Interface File: SPEC この仕様はRackプロトコルの形式化を目的とする。あなたは、そのためにRack::Lintを適用する事ができる(そしてそうすべき)。あなたがミドルウェアを開発する際、必ずすべての誤りを捕捉する前後にLintしなさい。 Rackアプリケーション Rackアプリケーションはcallに応えるRubyオブジェクト(classではない)。それは1つの引数environmentをとり、3つの値(statusとheadersと

    Pink
    Pink 2009/01/22
  • CGI を rackup してみた

    Ruby は自分の大好きな言語だが、実は長く運用する Web アプリを Ruby で書いたことはない。cgi.rb の評判はずいぶん前から芳しくないし、決定打となるフレームワークの不在が長く続いたこと、すでに PHP を使っていたことが大きな理由だった。 Rails が登場した。勉強した。「うーん、なんか DBMS とか要らないんだけど、どうしたらいいのよ?」と思っているうちに世間ではすっかり定着、代わりに自分の中では興味は薄れていった。そうこうしているうちに Rails の問題点もちょこちょこ指摘されるようになり、prototype.js とともに先駆者ゆえの苦難を味わっているなぁと感じている今日この頃。 Merb だなんだと言われていた中、Rack が登場した。これだ!と思った。こういうシンプルなやつが欲しかったんだよ! しかしそれから特に何の理由もないまま一年半の月日が流れた。なんか

    Pink
    Pink 2009/01/21
  • Route 477

    RubyのためのWebサーバインターフェイス、Rackの日語リファレンスです。 rack 1.3.0 (Rackプロトコル 1.1) 対応。 Rackがどういうものなのかについては Route 477 - 5分でわかるRack を参照してください。 概要 Hello Rack インストール: $ gem install rack hello.rb: require 'rubygems' require 'rack' class HelloApp def call(env) [200, {"Content-Type" => "text/plain"}, ["Hello, Rack"]] end end hello.ru: require './hello.rb' run HelloApp.new サーバ起動: $ rackup hello.ru ブラウザで http://localhost

  • Route 477

    GitHubindexHello source: index.md View on github | Report issue Generated by middleman 3.1.6. Powered by Ruby 2.2.2.

  • ウノウラボ Unoh Labs: RackでWebアプリのWebサーバー依存を無くす

    rack-logo posted by (C)komagata komagataです。 仕事でも使う必要が出てきたのでRubyの勉強をしています。WebアプリケーションでRubyを使おうとしていきなり躓いたのがApache、WEBrick、Mongrel等、実行環境毎の設定やAPIの違いです。 Rubyを普段使っている人には常識過ぎるのか情報が少なく、FastCGIで単に「Hello, World」を表示させるのにも一苦労でした。(Railsでは簡単に動くのが悔しい) そんな実行環境毎のAPIの差を吸収してくれるRackというライブラリを知ったので試してみました。 RackはRuby版WSGIと呼ばれているそうです。WSGIとはWeb Server Gateway Interfaceの略でWeb ServerとWeb Applicationの間のInterfaceを定めたPython界の仕

  • 川o・-・)<2nd life - Rack を使って Web サーバで統一されたインターフェイスの利用する

    http://rack.rubyforge.org/ 先日登場した Rack というライブラリを使うと、Web サーバごとに同一のインターフェイスを利用できるようになります。通常、Ruby で Web アプリケーション を動作させるとき、cgi なのか、fcgi なのか、もしくは mongrel や webrick を使うのか、ということを考えなければなりません。cgi のみで動作決めうち、など良いのですが、ガワである Web アプリケーションフレームワークや一般に配布するアプリケーションなど、既存のフレームワークを用いずに作るときは、さまざまな動作環境でも動くように考慮しなくてはなりません。 たとえば既存のフレームワークである Rails や Camping はそれぞれ個別に cgi/fcgi/mongrel/webrick などの対応を行っています。しかし Rack で定義されているイ

    川o・-・)<2nd life - Rack を使って Web サーバで統一されたインターフェイスの利用する
    Pink
    Pink 2007/03/18
  • 1